Ir para conteúdo

Pesquisar na Comunidade

Mostrando resultados para as tags ''c''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Todas as áreas do Fórum

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento Web
    • Desenvolvimento frontend
    • Javascript
    • PHP
    • Ruby
    • Python
    • Java
    • .NET
    • Docker, Kubernets e outros ambientes
    • Desenvolvimento com Wordpress
    • Desenvolvimento de apps
    • Desenvolvimento ágil
    • Desenvolvimento de Games
    • Banco de Dados
    • Design e UX
    • Algoritmos & Outras Tecnologias
  • Entretenimento e uso pessoal
    • Segurança & Malwares
    • Geral
    • Boteco iMasters

Encontrar resultados em...

Encontrar resultados que...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Encontrado 90 registros

  1. //O valor na média (resposta) sai muito diferente, gostaria de corrigir o código próximo a lógica que ele está. #include <stdio.h> #include <stdlib.h> #include <locale.h> double media(int vetor[], int tamanho) { float soma = 0, media = 0; int i = 0; for(i = 0; i<tamanho; i++) { soma+=vetor; } media = soma / tamanho; return media; } int main() { setlocale(LC_ALL, "Portuguese"); int i, x; float soma; printf("Qual o tamanho do vetor ?\n"); scanf("%d", &x); double vet[x]; for ( i = 0; i < x; i++ ) { printf ( "Valor na %d posição:\n", i +1 ); scanf("%lf", &vet[i + 1]); printf("%lf",vet[i + 1]); soma = soma + (vet[i + 1]); } printf("\n %f", soma); float resposta = media(vet, x); printf ("A média é: %.2f \n", resposta); system ("pause"); return 0; }
  2. Olá estou com dificuldades em desenvolver um algoritmo que leia um arquivo.txt, faça a correção do texto e crie o resultado em outro arquivo de saida. O processo de leitura deverá ocorrer linha por linha, porém o arquivo de entrada possui o seguinte erro de sintaxe. O arquivo de entrada possui um problema em que diversas linhas são strings repetidas da linha anterior, diferenciando de apenas um caractere. O algoritmo deverá ter uma função que faça a comparação entre as duas strings devolver 0 se forem iguais e o 1 se um caracter for diferente. Se mais caracteres forem diferentes, retorne a quantidade de caracteres diferentes entre elas. t te tes test teste saida: "teste" ------------------------------------------------------------------------------------------------------------------------ #include <stdio.h> #include <stdlib.h> #include <string.h> // cada linha não deverá ter mais que 1000 caractere// int Comparar(char *s1, char *s2) { int i, j; while (*s1) s1++; while (*s2) { *s1 = *s2; s2++; s1++; } *s1 = '\0'; } int main(int argc, char *argv[]) { char Linha[1000] FILE *arquivo; arquivo = fopen("entrada.txt", "r"); if (arquivo == NULL) { printf("Nao foi possivel abrir o arquivo \n"); return 1; } while (fgets(Linha, 1000, arquivo) != NULL) printf("%s", arquivo); fclose( if (argc != 3) { printf("\nExecute o programa da forma:\n"); return 0; } return 0; }
  3. bom-dia pessoal, não tenho conhecimento para fazer essa conversão ou deixar compatível, se alguém puder por favor fazer isso pra mim ficarei agradecido de coração. meu problema é o código abaixo que está usando biblioteca do windows WINSOCK2.H para fazer um ping no ip fornecido por um comando ping("ip") e retornar uma msg igual ao ping do windows, gostaria se possível que o mesmo fosse utilizado em linux (centos) mantendo a mesma funcionalidade ? ping.c #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif #include <WINSOCK2.H> #define DEF_BUF_SIZE 1024 #define IP_HEADER_SIZE 20 #define ICMP_HEADER_SIZE 12 typedef struct _ICMP_HEADER { BYTE bType; BYTE bCode; USHORT nCheckSum; USHORT nId; USHORT nSequence; UINT nTimeStamp; }ICMP_HEADER, *PICMP_HEADER; USHORT GetCheckSum(LPBYTE lpBuff, DWORD dwSize) { DWORD dwCheckSum = 0; USHORT* lpWord = (USHORT*)lpBuff; while(dwSize > 1) { dwCheckSum += *lpWord++; dwSize -= 2; } if(dwSize ==1) dwCheckSum += *((LPBYTE)lpBuff); dwCheckSum = (dwCheckSum >> 16) + (dwCheckSum & 0XFFFF); return (USHORT)(~dwCheckSum); } BOOL Ping(char* lpDestIP, int *nRet_, int *nTime_) { int nTime = 0; int ret = 0; char ICMPPack[ICMP_HEADER_SIZE] = {0}; char szRcvBuff[DEF_BUF_SIZE] = {0}; int i = 0; int nRet = 0; int nLen = 0; int nError = 0; SOCKET s; PICMP_HEADER pRcvHeader; SOCKADDR_IN SourceSockAddr; SOCKADDR_IN DestSockAddr; PICMP_HEADER pICMPHeader; DestSockAddr.sin_family = AF_INET; DestSockAddr.sin_addr.S_un.S_addr = inet_addr(lpDestIP); DestSockAddr.sin_port = htons(0); pICMPHeader = (PICMP_HEADER)ICMPPack; pICMPHeader->bType = 8; pICMPHeader->bCode = 0; pICMPHeader->nId = (USHORT)GetCurrentProcessId(); pICMPHeader->nCheckSum = 0; pICMPHeader->nTimeStamp = 0; s = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP); nTime = 1000; ret = setsockopt(s, SOL_SOCKET, SO_RCVTIMEO, (char*)&nTime, sizeof(nTime)); for(i=0; i <1; i++) { pICMPHeader->nCheckSum = 0; pICMPHeader->nSequence = i; pICMPHeader->nTimeStamp = GetTickCount(); pICMPHeader->nCheckSum = GetCheckSum((LPBYTE)(ICMPPack), ICMP_HEADER_SIZE); nRet = sendto(s, ICMPPack, ICMP_HEADER_SIZE, 0, (SOCKADDR*)&DestSockAddr, sizeof(DestSockAddr)); if(nRet == SOCKET_ERROR) { return FALSE; } nLen = sizeof(SOCKADDR_IN); if(nRet == SOCKET_ERROR) { return FALSE; } nRet = recvfrom(s, szRcvBuff,DEF_BUF_SIZE,0,(SOCKADDR*)&SourceSockAddr,&nLen); if(nRet == SOCKET_ERROR) { return FALSE; } pRcvHeader = (PICMP_HEADER)(szRcvBuff + IP_HEADER_SIZE); nTime = GetTickCount() - pRcvHeader->nTimeStamp; //printf("Return Message: %s bytes=%d time=%dms\n", inet_ntoa(SourceSockAddr.sin_addr), nRet, nTime); *nRet_ = nRet; *nTime_ = nTime; } return TRUE; } a outra estrutura: #include "ping.c" BUILDIN_FUNC(ping) { // const char *name; char _cmd[500]; int nRet=0, nTime=0; // // name = script_getstr(st,2); Ping((char *)name, &nRet, &nTime); if( nRet <= 0 || nTime < 0 ) sprintf(_cmd,"Return Message: %s fail to connect", (char *)name); else sprintf(_cmd,"Return Message: %s bytes=%d time=%dms\n", (char *)name, nRet, nTime); // script_pushstrcopy(st, _cmd); return 0; } BUILDIN_DEF(ping,"s") Desde já muito obrigado, fiz algumas buscas mas não achei nada que possa me ajudar a fazer essa conversão ou até mesmo redigir o código para funcionar em linux.
  4. MiihLeite

    Questão em C

    Bom galerinha me ajudem com essa questão, não estou sabendo como resolver: Escreva um programa em C que recebe inicialmente como entrada uma quantidade N de valores a serem lidos. Após isto, crie um vetor de tamanho N e leia os N valores inteiros a partir da entrada e armazene-os no vetor. Com isto, crie um segundo vetor de tamanho N. Copie os valores do primeiro vetor no segundo vetor mas de maneira invertida. Por fim, imprima o segundo vetor para verificar se os elementos foram realmente invertidos.
  5. TohoSeiwa

    Ajuda com system em C

    Olá bom dia/tarde/noite pessoal... Então eu gostaria de saber se é possível colocar o que aparece no system em uma variável... Ex: escrever "system(" date/t");" e obter uma variavel que tenha sempre essa data... tipo você está em 1/1/2020 e a variável armazena isso mesmo que você já não esteja nessa data. Estou fazendo um projeto para o meu curso... se me puderem ajudar muito obrigado.
  6. Nwband

    Dúvida criar um determinado programa em C

    programar um determinado programa pf Preciso de um programa em C que seja capaz de ler uma frase com ate 100 caracteres e imprimi-la, conseguir identificar quantas letras maiusculas e minusculas tem na frase e escreve-la ao contrario
  7. Auface

    Dúvida programação em C

    Pessoal estou iniciando na programaçaoem C e tenho este trabalho para fazer. Ajudem por favor , programação em C, e não tenho a minima ideia de como fazer, o enunciado é em inglês e está, neste link, é o exercício B(building a field). http://maratona.ime.usp.br/hist/2018/resultados18/contest_onesided.pdf Por enquanto eu fiz isso, mas não tenho certeza se começo assim.eu acho também que tenho que fazer este exercício a partir de um arquivo e lendo ele, mas também n sei como fazer. #include <stdio.h> int main() { float x1,y1,x2,y2; printf("Ponto 1: \n"); scanf("%f %f",&x1,&y1); printf("Pont 2: \n"); scanf("%f %f",&x2,&y2); printf("%.4f\n",(sqrt(pow(x2-x1,2)+pow(y2-y1,2)))); return 0; }
  8. eduardobraz

    Cancelamento de Aula em C

    Corrigir dois erros: entrada: 10 4 -93 -86 49 -62 -90 -63 40 72 11 67 Saída NAO 6 5 4 2 1 Mais com esse está assim NAO 1 3 4 5 #include <stdio.h> int main(){ int n, k, i, j, cont, vetor[1000], aux, po; while (1){ scanf("%d %d", &n, &k); if(n <= 1000 && n >= 0 && k <= 1000 && k >= 0){ break; } } for(i = 0; i < n; i++){ scanf("%d", &vetor); } for(i = 0; i < n; i++){ if(vetor <= 0){ cont++; } } if(cont >= k){ printf("NAO\n"); for(i=1; i<n; i++){ if (vetor <= 0){ aux = vetor; po=i; printf("%d\n", po); } } } else{ printf("SIM\n"); } }
  9. soaresgusta

    Dúvida programa que some de 1 a 100

    Boa tarde, exercício pede a seguinte questão:Faça um programa que leia um valor x qualquer e calcule:Y = ( x+1)+(x+2)+(x+3)+(x+4)+(x+5)+...(x+100).Eu não estou conseguindo criar uma função Y na linguagem que some de 1 a 100.#include <stdio.h>#include <stdlib.h>int main (){int Y=0, x, i=1;for (i=1;i<=100;i++);{Y= (x+i);printf("Digite um numero inteiro qualquer: \n");scanf ("%d", x);printf("Y = %d \n", Y);i++;}return (0);}Pela lógica, i varia de 1 a 100, mas quando eu executo o programa ele não soma. Alguém pode me ajudar?
  10. Leonard123456789

    Dúvida em algoritmo

    fazer um programa que pede ao usuário que entre com os valores de 0 a 10. Não pode ser maior que 10 e nem menor que 0 é não pode ter números repetidos e nem iguais var v,cont,igual:inteiro inicio cont <- 0 enquanto (cont <= 5) faca escreva("Digite os valores de 0 a 5: ") leia(v) se (v >5) entao escreval("Número errado!") fimse cont <- cont + 1 fimenquanto fimalgoritmo
  11. Thiago Hartmann

    Imprimir total em float (resolvido)

    O problema foi resolvido, vou deixar o código atualizado abaixo! Segue o código #include <stdio.h> #include <stdlib.h> #include <locale.h> #include <conio.h> void entrada (){ printf ("*************************************\n"); printf ("**** Bem Vindo ****\n"); printf ("**** a ****\n"); printf ("**** UNIPIZZA ****\n"); printf ("*************************************\n"); } int menu (){ int op; printf (" \nCardápio \n\n"); printf ("1 - Pizzas. \n"); printf ("2 - Bebidas. \n"); printf ("3 - Finalizar o pedido.\n"); printf ("Digite a opção desejada: \n"); scanf("%d", &op); printf ("\n"); ; return op; } int controladorapizza (int op) { int oppizza; printf ("\n1 - Pizza Mussarela - 18,50 R$ \n"); printf ("2 - Pizza Calabresa - 18,50 R$ \n"); printf ("3 - Pizza Franco com Catupiry - 18,50 R$ \n"); printf ("4 - Pizza Quatro Queijos - 22,50 R$ \n"); printf ("5 - Pizza Portuguesa - 22,50 R$ \n"); printf ("Digite a opção desejada: \n"); scanf ("%d", &oppizza); switch (oppizza){ case 1: printf ("\nVocê adicionou pizza de Mussarela a sua bandeja!\n"); break; case 2: printf ("\nVocê adicionou pizza de Calabresa a sua bandeja!\n"); break; case 3: printf ("\nVocê adicionou pizza de Frango com Catupiry a sua bandeja!\n"); break; case 4: printf ("\nVocê adicionou pizza de Quatro Queijos a sua bandeja!\n"); break; case 5: printf ("\nVocê adicionou pizza de Portuguesa a sua bandeja!\n"); break; default: printf ("\nValor incorreto, tente novamente\n"); break;} return oppizza; } int controladorabebida (int op) { int opbebida; char str [10]; printf ("\n1 - Suco - 5,00 R$ \n"); printf ("2 - Refrigerante Lata - 4,00 R$\n"); printf ("3 - Refrigerante 2L - 13,00 R$\n"); printf ("Digite a opção desejada: \n"); scanf ("%d", &opbebida); switch (opbebida){ case 1: printf ("\nInforme o sabor do suco: \n"); scanf ("%s", str); printf ("\nVocê adicionou suco de %s a sua bandeja!\n", str); break; case 2: printf ("\nInforme o refrigerante lata: "); scanf ("%s", str); printf ("\nVocê adicionou %s lata a sua bandeja!\n", str); break; case 3: printf ("\nInforme o refrigerante 2 Litros: "); scanf ("%s", str); printf ("\nVocê adicionou %s 2 Litros a sua bandeja!\n", str); break; default: printf ("\nComando incorreto, tente novamente\n"); break;} return opbebida; } float somapizza (int oppizza){ float precopizza; switch (oppizza){ case 1: precopizza = 18,50; break; case 2: precopizza = 18,50; break; case 3: precopizza = 18,50; break; case 4: precopizza = 22,50; break; case 5: precopizza = 22,50; break;} return precopizza; } int somabebida (int opbebida){ int precobebida; switch (opbebida){ case 1: precobebida = 5; break; case 2: precobebida = 4; break; case 3: precobebida = 13; break; } return precobebida; } int main(){ setlocale(LC_ALL,""); int op,oppizza,opbebida; float tpiz = 0; float tbeb = 0; float totalpedido; float precopizza,precobebida; entrada(); do{ op = menu(op); switch(op){ case 1: oppizza = controladorapizza(oppizza); precopizza = somapizza(oppizza); tpiz = precopizza + tpiz; break; case 2: opbebida = controladorabebida(opbebida); precobebida = somabebida(opbebida); tbeb = precobebida + tbeb; break; } }while(op != 3 ); totalpedido = tpiz+tbeb; printf ("O valor total de seu pedido é: %.2f", totalpedido); printf("\n\n\n"); return 0; } Obrigado!
  12. andiroldao

    Problema com NaN em C

    Então, estava trabalhando nesse algoritmo em Portugol e resolvi traduzir para C, porém, se eu entro com dados em veículos maior que 2000, a Média de acidentes em cidades com menos de 2000 veículos de passeio aparece como: -nan. Alguém sabe me dizer onde estou errando? #include <stdio.h> int main(void) { //- Variáveis int codigo, veiculos, acidentes; int codigo_menos_acidente = 0; int codigo_mais_acidente = 0; int indice_menor_cidade = 0; int codigo_menor_cidade = 0; int indice_maior_cidade = 0; int codigo_maior_cidade = 0; int soma_acidentes_menor_2000 = 0; int menor_indice_acidentes = 0; int maior_indice_acidentes = 0; int soma_geral_de_veiculos = 0; int numero_cidades = 0; float media_de_veiculos_cidades = 0; float numero_cidades_veiculos_menor_2000 = 0; float media_de_acidentes_menor_2000 = 0; char continuar_a_pedir_dados = 1; do{ //- Entrada de dados printf("\nEntrada de dados \n\n"); //- Código da cidade; printf("Insira o Código da Cidade: "); scanf("%d", &codigo); //- Número de veículos de passeio; printf("Insira o número de veículos de passeio: "); scanf("%d", &veiculos); //- Número de acidentes de trânsito com vítimas; printf("Insira número de acidentes de trânsito com vítimas: "); scanf("%d", &acidentes); soma_geral_de_veiculos += veiculos; numero_cidades += 1; if(acidentes< indice_menor_cidade || indice_menor_cidade == 0) { codigo_menor_cidade = codigo; indice_menor_cidade = acidentes; } if(acidentes > indice_maior_cidade || indice_maior_cidade == 0) { codigo_maior_cidade = codigo; indice_maior_cidade = acidentes; } if(veiculos < 2000) { soma_acidentes_menor_2000 += acidentes; numero_cidades_veiculos_menor_2000 += 1; } if(acidentes < menor_indice_acidentes || menor_indice_acidentes == 0) { codigo_menos_acidente = codigo; menor_indice_acidentes = acidentes; } if(acidentes > maior_indice_acidentes || maior_indice_acidentes == 0) { codigo_mais_acidente = codigo; maior_indice_acidentes = acidentes; } printf("\nPara inserir novos dados digite \"1\", para sair do programa digite outro valor: "); scanf("%s", &continuar_a_pedir_dados); } while(continuar_a_pedir_dados == '1'); printf("\n\nResultado da pesquisa\n"); media_de_veiculos_cidades = soma_geral_de_veiculos / numero_cidades; media_de_acidentes_menor_2000 = soma_acidentes_menor_2000 / numero_cidades_veiculos_menor_2000; //- Qual o maior índice de acidente de trânsito; printf("\nMaior índice de acidentes: %d\n", maior_indice_acidentes); //- Qual cidade pertence o maior índice de acidente de trânsito; printf("\nCidade com mais acidentes: %.d\n", codigo_maior_cidade); //- Qual o menor índice de acidente de trânsito; printf("\nMenor índice de acidentes: %d\n", menor_indice_acidentes); //- Qual cidade pertence o menor índice de acidente de trânsito; printf("\nCidade com menos acidentes: %d\n", codigo_menor_cidade); //- Qual a média de veículos nas0 cidades juntas; printf("\nMédia de víiculos: %.f\n", media_de_veiculos_cidades); //- Qual a média de acidentes de trânsito nas cidades com menos de 2000 veículos de passeio. printf("\nMédia de acidentes em cidades com menos de 2000 veículos de passeio: %.f\n", media_de_acidentes_menor_2000); printf("\n"); return 0; }
  13. Bom, eu preciso fazer uma tabela hash de 100 elementos como mostrado no esquema: Essa tabela (vetor) de 100 elementos … cada um deles possuem números chamados de “chaves” e um ponteiro apontando para o a próxima chave (lista encadeada).A regra que deve ser seguida para as inserções no vetor, é que o ultimo digito da chave é seu “endereço”, e esse endereço indica qual posição do vetor eu devo inserir. Ex: Inserir a chave 487 (chave) 487 % (tamanho do vetor) 100 = 7 Então devo inserir a chave 487 na posição 87 do vetor: v[87] = 487 Porém eu estou tendo problemas com os ponteiros para chamar as funções e utiliza-los... Eu sei fazer uma lista encadeada, porém não sei como fazer um vetor disso...Esse é um pouco do que eu fiz quando era só uma lista encadeada... struct dados { int chave; struct dados *prox; }; typedef struct dados Lista; void Cria(Lista **L) { *L = NULL; } void Inserir(Lista **L, int v) { Lista *p, *q; p = (Lista*)calloc(1, sizeof(Lista)); p->chave = v; p->prox = NULL; if(*L == NULL) { *L = p; } else { q = *L; while(q->prox != NULL) { q = q->prox; }; q->prox = p; } } Eu conversei com um amigo e ele me indicou fazer a declaração da struct dessa forma: struct dados { int chave; struct dados * prox; } tabela[100]; typedef struct dados Elemento; Entretanto eu não tenho ideia de como eu vou chamar isso na função... Porque o vetor vai estar na main()... e eu só vou chamar a função "Inserir" com o vetor e o valor para inserir Como eu chamaria essa função ? Inserir(???,int chave) Se alguém puder me dar uma luz, eu agradeço demais ... Preciso fazer varias coisas alem da inserção, mas não consigo porque eu não sei de que forma eu vou chamar esse vetor/variável de controle das listas
  14. leo99i

    Ordenar vetores em C.

    Estou criando um projeto da faculdade e estou com dificuldade em realizar o item 5 do menu do meu programa que no caso é para ordenar os vetores. Meu código está assim: Se alguém puder me ajudar a resolver o item 5 eu agradeço. #include <stdio.h> #include <stdlib.h> #include <locale.h> #include <time.h> #define TAM 8 int main() { setlocale(LC_ALL, "Portuguese"); int menu, vetor1[TAM], vetor2[TAM], i, j, volta = 0, escolha, posicao, valor, acc=0; do { printf("=========CALCULADORA DE VETORES========= \n"); printf(" MENU DE OPÇÕES \n"); printf("1 - Gerar vetores \n"); printf("2 - Imprimir vetores \n"); printf("3 - Eliminar elemento do vetor \n"); printf("4 - Pesquisar elemento nos vetores\n"); printf("5 - Ordenar os vetores\n"); printf("6 - Calcular operações matemáticas\n"); printf("7 - Calcular métodos estatísticos \n"); printf("8 - Total de elementos válidos \n"); printf("9 - Sair \n"); printf("==========================================\n"); printf("Escolha a opção: "); scanf("%i", &menu); srand(time(NULL)); switch(menu) { case 1: for(i=0; i < TAM; i++){ vetor1 = rand()%500+1; vetor2 = rand()%500+1; } break; case 2: printf("Vetor 1: \n"); printf("[%i - ", vetor1[0]); for(i=1; i< 7; i++){ printf("%i - ", vetor1); } printf(" %i]\n", vetor1[7]); printf("\n\n"); printf("Vetor 2: \n"); printf("[%i - ", vetor2[0]); for(i=1; i< 7; i++){ printf("%i - ", vetor2); } printf(" %i]\n", vetor2[7]); printf("\n\n"); break; case 3: do{ printf(" Escolha de vetor \n"); printf("Digite 1 para o Vetor 1 \n"); printf("Digite 2 para o Vetor 2 \n"); printf("\nEscolha a opção: "); scanf("%i", &escolha); } while(escolha <= 0 || escolha >= 3); if(escolha == 1){ printf("Escolha a posição do vetor: "); scanf("%i", &posicao); if((vetor1[posicao] == 0) || (posicao < 0 || posicao >= 7)){ printf("\nERRO!!!\n"); } else{ vetor1[posicao] = 0; printf("\nOperação realizada com sucesso!\n"); } } else{ printf("Escolha a posição do vetor: "); scanf("%i", &posicao); if((vetor2[posicao] == 0) || (posicao < 0 || posicao >= 7)){ printf("\nERRO!!!\n"); } else{ vetor2[posicao] = 0; printf("\nOperação realizada com sucesso!\n"); } } break; case 4: scanf("%i",&valor); acc = 0; for(i=0;i<2;i++) { for(j=0;j<7;j++) { if(i==0) { if(valor == vetor1[j]) { acc = acc + 1; printf("\nO valor %i está localizado na posição %i do Vetor 1\n", valor,j+1); } } else { if(valor == vetor2[j]) { acc= acc + 1; printf("\nO valor %i está localizado na posição %i do Vetor 2\n",valor,j+1); } } } } if(acc == 0) { printf("\nNão foi encontrado o %i em nenhuma dos veteores\n", valor); } break; case 5: case 9: exit(0); } } while(volta==0); return 0; }
  15. pedrofelicio

    BUSCA EM ARQUIVO BINARIO

    Olá estou com trabalho da faculdade em que tenho que implementa todas as buscas em arquivo binário preciso validar um CODIGO de cadastro porém não sei porque não esta entrando no IF ( pos==1) int buscaexaustiva(FILE *inscricao, int cod) { cadjogador player; rewind(inscricao); fread(&player,sizeof(player),1,inscricao); while(!feof(inscricao)&&player.cod!=cod) fread(&player,sizeof(player),1,inscricao); if(player.cod==cod) return ftell(inscricao)-sizeof(cadjogador); else return -1; } void cadastrojogador(char arq[]) { . . int pos,aux; cadjogador player; printf("*******CADASTRO DO JOGADOR******* \n"); printf("CODIGO: \n"); inscricao=fopen(arq,"ab"); fflush(stdin); scanf("%d",&player.cod); while(player.cod!=0) { pos=buscaexaustiva(inscricao, player.cod); if(pos==-1) { printf("****CODIGO NAO CADASTRADO****");
  16. joaquim_bezzera

    Estrutura de Cadastro

    Estou fazendo um trabalho para a faculdade criando uma estrutura de cadastro de uma corrida. Já consegui fazer grande parte mas não consigo resolver esses pontos. Alguém saberia resolver?
  17. sudden

    [Código] Mercado digital

    Olá alguém que esteja lendo isso, tem dias que eu não consigo rodar esse algoritmo certo, não sei mais o que eu faço, nao sou nenhum desenvolvedor nem nada, tô no 1 semestre #include <stdio.h> #include <stdlib.h> //Inicio Structs struct telefones{ char numfixo[15]; char celular[16]; }; struct clientes{ double cpf; int codcliente; struct telefones t; char nome[30]; char sexo; }; struct produtos{ char nomeprod[20]; int codigoproduto; float valor; char modelo [10]; }; struct carrinhos{ struct clientes cliente[5]; struct produtos produto[5]; int quantidade; float subtotal; float desconto; // porcentagem float total; }; struct modelos{ char marca [20]; char modelo [20]; }; /////Fim Structs //Inicio Fun��o void cadastrarCliente(struct clientes cliente[50], int cont); void mostrarCliente(struct clientes cliente[50]); void mostraMenuPrincipal(); void mostrarProduto(struct produtos produto[50]); void cadastrarProduto(struct produtos produto[50],int contp); void efetuarCompra(struct carrinhos carrinho[50],struct clientes cliente[3],struct produtos produto[10]); void ordenarCliente(struct clientes cliente[50]); // Inicio Main void main(int argc, char *argv[]) { int resposta,contp=0,cont=0,voltar=0; //cont e o contador do cliente, contp e do produto. struct produtos produto[50]; struct clientes cliente[50]; struct carrinhos carrinho[50]; struct modelos modelo[50]; ////////////inicio declarando structs para ele ter oque mostrar//////////////////////////////////// ///////////////////Ira direcionar o usuario no menu /////////////////////// do{ mostraMenuPrincipal(); scanf("%d", &resposta); switch(resposta) { case 1: cadastrarCliente(cliente, cont); cont=cont+1; //agora a proxima vez que for cadastrar um cliente, o indice vai ser um apos o anterior. system("pause"); break; case 2: cadastrarProduto(produto,contp); contp=contp+1; system("pause"); break; case 3: mostrarCliente(cliente); system("pause"); break; case 4: mostrarProduto(produto); system("pause"); break; case 5: efetuarCompra(carrinho,cliente,produto); system("pause"); break; case 6: ordenarCliente(cliente); contp=contp+1; break; default: exit(0); } }while(1); } ////////////////////////print menu /////////////////////////////////////////// void mostraMenuPrincipal(){ system("cls"); printf("==========================================================\n"); printf("1 - CADASTRAR CLIENTE\n"); printf("2 - CADASTRAR PRODUTO\n"); printf("3 - LISTA DE CLIENTES\n"); printf("4 - LISTA DE PRODUTOS\n"); printf("5 - EFETUAR VENDA\n"); printf("0 - SAIR DO MERCADO DIGITAL\n"); printf("==========================================================\n"); printf("Digite sua opcao: "); } ////////////////////////print cadastrar cliente /////////////////////////////////////////// void cadastrarCliente(struct clientes cliente[50],int cont){ system("cls"); printf("=======================================================\n"); printf("-----------------CADASTRAR CLIENTE: %d-----------------\n", cont+1); printf("=======================================================\n\n\n"); printf("AVISO! Digite o CPF da forma original com ponto e tra�os\n\n"); printf("CPF: "); fflush(stdin); //limpa o buffer scanf("%f",&cliente[cont].cpf); printf("NUM FIXO: "); fflush(stdin); scanf("%d", &cliente[cont].t.numfixo); printf("CELULAR: "); fflush(stdin); scanf("%d", &cliente[cont].t.celular); printf("NOME: "); fflush(stdin); gets(cliente[cont].nome); printf("DATA NASCIMENTO: "); fflush(stdin); cliente[cont].codcliente=cliente[cont].cpf/100000; printf("\n==========================================================\n"); printf("O CODIGO DO CLIENTE GERADO E: %d",&cliente[cont].codcliente); printf("\n"); //Printa o cliente que foi cadastrado printf("\nCPF: %d",cliente[cont].cpf); printf("\nNUM FIXO: %d",cliente[cont].t.numfixo); printf("\nCELULAR: %d",cliente[cont].t.celular); printf("\nNOME: %s",cliente[cont].nome); printf("\n=================================================\n"); } ////////////////////////print listar cliente /////////////////////////////////////////// void mostrarCliente(struct clientes cliente[50]){ int repet=0; printf("================================================\n"); printf("----------------- LISTAR CLIENTE -----------------\n"); printf("================================================\n"); for(repet=0;repet<=2;repet++){ printf("\nCPF: %d",cliente[repet].cpf); printf("\nNUM FIXO: %d",cliente[repet].t.numfixo); printf("\nCELULAR: %d",cliente[repet].t.celular); printf("\nNOME: %s",cliente[repet].nome); printf("\nCODIGO DO CLIENTE: %d\n",cliente[repet].codcliente); } } ////////////////////////print cadastrar produto /////////////////////////////////////////// void cadastrarProduto(struct produtos produto[50],int contp){ printf("=================================================\n"); printf("-----------------CADASTRAR PRODUTO: %d-----------------\n", contp+1); printf("=================================================\n"); printf("CODIGO DO PRODUTO: \n"); scanf("%d",&produto[contp].codigoproduto); printf("\nNOME DO PRODUTO: "); fflush(stdin); gets(produto[contp].nomeprod); printf("\nMARCA: "); (stdin); printf("\nMODELO: "); fflush(stdin); printf("\nVALOR: "); fflush(stdin); scanf("%f",&produto[contp].valor); //agora printar produto printf("\nCODIGO DO PRODUTO: %d\n",produto[contp].codigoproduto); printf("\nNOME DO PRODUTO: %ss\n",produto[contp].nomeprod); printf("\nVALOR DO PRODUTO: R$ %0.2f\n",produto[contp].valor); printf("\nMODELO DO PRODUTO: %s", produto[contp].modelo); } ////////////////////////print listar produtos /////////////////////////////////////////// void mostrarProduto(struct produtos produto[50]){ int repet; printf("================================================\n"); printf("----------------- LISTAR PRODUTO -----------------\n"); printf("================================================\n"); for(repet=0;repet<=9;repet++){ printf("\n\nCODIGO DO PRODUTO: %d",produto[repet].codigoproduto); printf("\nNOME DO PRODUTO: %s",produto[repet].nomeprod);543; printf("\nVALOR DO PRODUTO: R$ %0.2f\n\n",produto[repet].valor); } } //pode ser de haja erro na compra void efetuarCompra(struct carrinhos carrinho[50],struct clientes cliente[3],struct produtos produto[10]){ int buscacliente,x; int buscaprod,buscaprod2,buscaprod3; int quantidade,quantidade2,quantidade3; float total,total2,total3; float totalum,todototal,cupom,desc; float fimtotal; mostrarCliente(cliente); printf("\n\nDigite o codigo do cliente: "); scanf("%d",&buscacliente); for(x=0;x<=50;x++){ int y; if(cliente[x].codcliente==buscacliente){ y=1; } if(y==1){ buscacliente=x; y=51; } } system("cls"); mostrarProduto(produto); printf("\ncarrinho do cliente %s",cliente[buscacliente].nome); printf("\ndigite o codigo do produto 1: "); scanf("%d",&buscaprod); for(x=0;x<=50;x++){ int y; if(produto[x].codigoproduto==buscaprod){ y=1; } if(y==1){ buscaprod=x; y=51; } } printf("\ndigite a quantidade: "); scanf("%d",&quantidade); total = quantidade * produto[buscaprod].valor; //REPETICAO///////////////////// printf("\ndigite o codigo do produto 2: "); scanf("%d",&buscaprod); for(x=0;x<=50;x++){ int y; if(produto[x].codigoproduto==buscaprod){ y=1; } if(y==1){ buscaprod=x; y=51; } } printf("\ndigite a quantidade: "); scanf("%d",&quantidade); total2 = quantidade * produto[buscaprod].valor; //REPETICAO///////////////////// printf("\ndigite o codigo do produto 3: "); scanf("%d",&buscaprod); for(x=0;x<=50;x++){ int y; if(produto[x].codigoproduto==buscaprod){ y=1; } if(y==1){ buscaprod=x; y=51; } } printf("\ndigite a quantidade: "); scanf("%d",&quantidade); total3 = quantidade * produto[buscaprod].valor; //system("pause"); printf("digite o cupom de desconto: "); scanf("%f", &cupom); todototal = total + total2 + total3; desc = todototal * (cupom / 100); fimtotal = todototal - desc; printf("Total: R$ %0.2f\n", todototal); printf("Valor do Desconto: R$ %0.2f\n", desc); printf("Valor total e R$ %0.2f\n", fimtotal); system("pause"); } void ordenarCliente(struct clientes cliente[50]){ int i,b; int codigotemp,cpftemp,fixotemp,celulartemp,datanasctemp; char nometemp; printf("Organizando lista...\n"); for(i=0;i<=3;i++){ for(b=0;b<=3;b++){ if(cliente[b].codcliente>cliente[b+1].codcliente){ //valores para variaveis temporarias printf("transferindo valores para variaveis temporarias...\n"); codigotemp=cliente[b].codcliente; fixotemp=cliente[b].t.numfixo; celulartemp=cliente[b].t.celular; //strcpy(nometemp , cliente[b].nome); nometemp=cliente[b].nome; cpftemp=cliente[b].cpf; printf("variaveis temporarias transferidas.\n"); //fim da transferencia de valores para variaveis temporarias //fazer os valores de indice b receber o valor do indice da struct do indice seguinte printf("cliente %d recebendo valores do cliente... %d\n",b,b+1); cliente[b].codcliente=cliente[b+1].codcliente; strcpy(cliente[b].nome , cliente[b+1].nome); cliente[b].cpf=cliente[b+1].cpf; printf("cliente %d recebeu valores do cliente %d\n",b,b+1); //fim da transferencia de valores do segundo para o primeiro indice //inicio dE transferencia de valores do primeiro indice para o segundo indice printf("cliente %d recebendo valores das variaveis temporarias...\n",b+1); cliente[b+1].codcliente=codigotemp; printf("recebeu codigo do cliente.\n"); //cliente[b+1].nome=nometemp; strcpy(cliente[b+1].nome,nometemp); //sprintf(cliente[b+1].nome,nometemp); printf("recebeu nome\n"); cliente[b+1].cpf=cpftemp; printf("recebeu cpf\n"); printf("cliente %d recebeu valores das variaveis temporarias\n",b+1); printf("---- ---- ---- ---- "); } } } printf("Operacao concluida.\n"); }
  18. eduardobraz

    Sequência ordenada em C

    Entrada Para cada sequência numérica há na entrada duas linhas: uma com, apenas um valor inteiro, indica o número de valores reais que deve ocorrer na próxima linha. A linha seguinte contém tantos valores quanto indicado na linha anterior. Entre dois valores há apenas um espaço e após o último valor há um caractere de quebra de linha. A última linha da entrada contém um tamanho de sequência igual a zero e serve apenas para indicar término do processamento. Não há uma linha com sequência de valores após a ocorrência de uma linha com valor zero. Saída Para cada seqüência da entrada o seu programa deve emitir uma das seguintes respostas: ORDENADA, se a sequência estiver em ordem crescente de valores ou DESORDENADA, em caso contrário. Após cada palavra impressa deve haver apenas um caractere de quebra de linha. Exemplo Entrada 10 2.98 16.42 18.0 23.67 31.99 38.50 42.30 61.782000.00 2000.10 5 4.51 4.32 4.90 56.70 150.80 6 0.00 2.56 4.00 80.4 100.98 100.97 0 Saída ORDENADA DESORDENADA DESORDENADA Código <- Está em Loop #include <stdio.h> int main(){ int t, i; double n, sequencia,n2; char c; n2 = 0; sequencia = 0; scanf("%d", &t); for (i = 0; i < t; i++) { scanf("%lf", &n); do { c = fgetc(stdin);} while ( c!='\n') ; printf("%lf ", n); if(n > n2 || n < n2){ sequencia++; } n2 = n; } if(n == sequencia){ printf("ODERNADA"); } else{ printf("DESORDENADA"); } }
  19. eduardobraz

    Número Perfeito em C

    //Programa 26 #include <stdio.h> int main(){ int n, j, i, soma, aux; scanf("%d", &n); aux =1; for(i = 1; i <= aux; i++) { soma = 0; printf("%d = ", n); for(j = 1; j < n; j++){ if (n % j == 0){ soma += j; printf("%d + ", j); } } if(n == soma){ printf("= %d (NUMERO PERFEITO)\n", soma); } else{ printf("= %d (NUMERO NAO E PERFEITO)\n", soma); } } return 0; } Gostaria ajuda de vocês para remover um "+" antes do "=" Exemplo Coloco 6 na entrada. E na saída deveria sair 1 + 2 + 3 = 6 mais sai 1 + 2 + 3 + = 6
  20. As 10 principais linguagens de programação do mercado
  21. Preciso criar um programa em C que converta um vetor de 32 caracteres (recebidos do usuário), e os caracteres que não forem letras devem ser convertidos em espaço em branco mostrando no final o vetor resultante e a quantidade de espaços em branco. Como seria para fazer usando apenas a biblioteca 'stdio.h'?
  22. totalizando, no máximo, 10 veículos. Para cada veículo, deverão ser fornecidos os seguintes dados: - marca do veículo - modelo - ano de fabricação - placa (formato XXX-YYYY; onde X denota as letras e Y denota os números da placa). O sistema deverá oferecer, ao usuário, as seguintes funcionalidades: - Listar os veículos cadastrados; - Inserir um novo veículo; - Listar os veículos filtrando-se por ano de fabricação; - Listar os veículos com o ano de fabricação acima de um certo valor especificado pelo usuário . - Listar os veículos filtrando-se pelo modelo. O sistema deverá armazenar os veículos ordenados pelo ano de fabricação, ou seja, ao inserir um novo veículo, este deve ser inserido em ordem crescente de ano de fabricação. POR FAVORR ALGUEM ME AJUDAAAA
  23. Thiago Hartmann

    Soma dos itens de um cardápio em C

    Olá a todos! Sou iniciante em C, estou cursando o 1º semestre em ads na faculdade, estou fazendo um trabalho onde preciso elaborar um software para uma pizzaria, contendo cardápio, preço dos produtos, login e etc... estou com um problema em relação ao cardápio, onde não sei como somar os valores dos itens escolhidos pelo "cliente" através do cardápio se puderem me ajudar em relação a como colocar os preços referentes a cada produto para que eles somem automaticamente quando o cliente escolher o que deseja, pois não sei se devo fazer como constantes globais, ou uma função específica para isso. Obrigado! #include <stdio.h> #include <stdlib.h> #include <locale.h> #include <conio.h> void entrada (){ printf ("*************************************\n"); printf ("**** Bem Vindo ****\n"); printf ("**** a ****\n"); printf ("**** UNIPIZZA ****\n"); printf ("*************************************\n"); } int menu (){ int op; printf (" \nCardápio \n\n"); printf ("1 - Pizzas. \n"); printf ("2 - Bebidas. \n"); printf ("3 - Finalizar o pedido.\n"); printf ("Digite a opção desejada: \n"); scanf("%d", &op); getch()-48; printf ("\n"); ; return op; } int controladorapizza (int op) { int oppizza, m, c, fc,qq, p; printf ("\n1 - Pizza Mussarela - 18,00 R$ \n"); printf ("2 - Pizza Calabresa - 18,00 R$ \n"); printf ("3 - Pizza Franco com Catupiry - 18,00 R$ \n"); printf ("4 - Pizza Quatro Queijos - 22,00 R$ \n"); printf ("5 - Pizza Portuguesa - 22,00 R$ \n"); printf ("Digite a opção desejada: \n"); scanf ("%d", &oppizza); switch (oppizza){ case 1: printf ("\nVocê adicionou pizza de Mussarela a sua bandeja!\n"); m = 18; break; case 2: printf ("\nVocê adicionou pizza de Calabresa a sua bandeja!\n"); c = 18; break; case 3: printf ("\nVocê adicionou pizza de Quatro Queijos a sua bandeja!\n"); qq = 22; break; case 4: printf ("\nVocê adicionou pizza de Portuguesa a sua bandeja!\n"); p = 22; break; default: printf ("\nValor incorreto, tente novamente\n"); break;} return oppizza; } int controladorabebida (int op) { int opbebida, s, sv, rl, rlv, r, rv; char str [10]; printf ("\n1 - Suco - 5,00 R$ \n"); printf ("2 - Refrigerante Lata - 4,00 R$\n"); printf ("3 - Refrigerante 2L - 13,00 R$\n"); printf ("Digite a opção desejada: \n"); scanf ("%d", &opbebida); switch (opbebida){ case 1: printf ("\nInforme o sabor do suco: \n"); scanf ("%s", &str); printf ("\nVocê adicionou suco de %s a sua bandeja!\n", str); sv = 5; break; case 2: printf ("\nInforme o refrigerante lata: "); scanf ("%s", &str); printf ("\nVocê adicionou %s lata a sua bandeja!\n", str); rlv = 4; break; case 3: printf ("\nInforme o refrigerante 2 Litros: "); scanf ("%s", &str); printf ("\nVocê adicionou %s 2 Litros a sua bandeja!\n", str); rv = 13; break; default: printf ("\nComando incorreto, tente novamente\n"); break;} return opbebida; } int main(){ setlocale(LC_ALL,""); int op,oppizza,opbebida, total; const int entrega = 5; entrada(); do{ op = menu(op); switch(op){ case 1: oppizza = controladorapizza(oppizza); break; case 2: opbebida = controladorabebida(opbebida); break; total = entrega+opbebida+oppizza; printf ("O total de seu pedido é: %d", total); } }while(op != 3 ); total = entrega+opbebida+oppizza; printf ("O total de seu pedido é: %d", total); printf("\n\n\n"); return 0; }
  24. É possível verificar a ocorrência de um caractere em negrito em uma planilha do Excel utilizando c/c++?
  25. O sistema consiste em ler os dados cadastrados (valores estáticos) de uma entrevista e fornecer as informações para as seguintes perguntas: 1 - Quantidade de mulher e homens na área? (% de cada sexo) 2 - Faixa etária? (Menor e maior idade por sexo). Criar um vetor idade para cada sexo. 3 - Quem ganha mais? Homem ou Mulher? (Comparar médias de salários) 4 - Quem é mais especializado? (Comparar quantidade com pós-graduação %) Ex1. Perguntas? Sexo (1- H, 2-M) Idade (?) Salário (?) Possui pós-graduação? (1-S, 2-N) Entrada (estática) Entrevistado 1 Sexo = 1 Idade = 19 Salário = 4.000,00 Possui pós-graduação = 2 Entrevistado 2 Sexo = 2 Idade = 25 Salário = 3.000,00 Possui pós-graduação = 1 Entrevistado 3 Sexo = 1 Idade = 18 Salário = 5.000,00 Possui pós-graduação = 2 Entrevistado 4 Sexo = 1 Idade = 23 Salário = 6.000,00 Possui pós-graduação = 1 Entrevistado 5 Sexo = 2 Idade = 30 Salário = 2.000,00 Possui pós-graduação = 1 SAÍDA 1 - Quantidade de mulher e homens na área? 60% homens e 40% mulheres 2 - Faixa etária? homens (18-23) e mulheres (25-30) 3 - Quem ganha mais? Homem ou Mulher? Homens (média 5.000,00) e Mulheres (média 2.500,00) 4 - Quem é mais especializado? homens - 33% e mulheres - 100% Cálculo = qtdhomens com pós/qtdhomens *100
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.