Jump to content
Fórum Script Brasil

Search the Community

Showing results for tags 'c'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Programação & Desenvolvimento
    • ASP
    • PHP
    • .NET
    • Java
    • C, C++
    • Delphi, Kylix
    • Lógica de Programação
    • Mobile
    • Visual Basic
    • Outras Linguagens de Programação
  • WEB
    • HTML, XHTML, CSS
    • Ajax, JavaScript, XML, DOM
    • Editores
  • Arte & Design
    • Corel Draw
    • Fireworks
    • Flash & ActionScript
    • Photoshop
    • Outros Programas de Arte e Design
  • Sistemas Operacionais
    • Microsoft Windows
    • GNU/Linux
    • Outros Sistemas Operacionais
  • Softwares, Hardwares e Redes
    • Microsoft Office
    • Softwares Livres
    • Outros Softwares
    • Hardware
    • Redes
  • Banco de Dados
    • Access
    • MySQL
    • PostgreSQL
    • SQL Server
    • Demais Bancos
  • Segurança e Malwares
    • Segurança
    • Remoção De Malwares
  • Empregos
    • Vagas Efetivas
    • Vagas para Estágios
    • Oportunidades para Freelances
  • Negócios & Oportunidades
    • Classificados & Serviços
    • Eventos
  • Geral
    • Avaliações de Trabalhos
    • Links
    • Outros Assuntos
    • Entretenimento
  • Script Brasil
    • Novidades e Anúncios Script Brasil
    • Mercado Livre / Mercado Sócios
    • Sugestões e Críticas
    • Apresentações

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

Found 425 results

  1. Boa tarde,Queria um auxilio em uma questão que necessita ser resolvida com recursividade. ou seja ser resolvida com uma função que se repete sendo chamada quantas vezes for necessário: Então minha duvida é: Escreva uma função recursiva que recebe um número inteiro e retorne a soma dos seus dígitos. Exemplo= N = 45. Saída deverá ser 9. Eu consigo resolver mas não recursivamente e isso que esta me atrapalhando! Quem conseguir me ajudar eu pago um pastel ou coxinha no final da quarentena
  2. Olá pessoal estou com um problema, tenho que calcular o seguinte programa: dado um inteiro calcule o menor primo maior que "a" , fiz u programa mas ele só mostra se o número é primo ou não. #include<stdio.h> #include <locale.h> int main() { setlocale(LC_ALL, ""); int num, i, resultado = 0; printf("Digite um número: "); scanf("%d", &num); for (i = 2; i <= num / 2; i++) { if (num % i == 0) { resultado++; break; } } if (resultado == 0) printf("%d é um número primo\n", num); else printf("%d não é um número primo\n", num); return 0; }
  3. https://imgur.com/a/WnIVIFg São 5 questões mas para fazer em um único código! me ajudem, por favor !!!
  4. Olá, to entrando agora no mundo da programação. Já programava algumas coisas em HTML, mas resolvi migrar para por algumas ideias em prática. Só que não consigo tirá-las do papel para desenvolver esse app de rede social, no estilo das que conhecemos(login,post,interação). Queria saber todos os passos e como organizar os códigos, e quais linguagem tenho que dominar para isso, para conseguir fazer da estrutura, ao layout do app. Já sei que vou precisar de um banco de dados.
  5. Tenho essa lista em um arquivo text: 1 1 6 5 10 4 2 2 4 8 5 8 3 3 2 1 23 10 4 4 6 9 14 5 5 5 5 3 15 6 6 6 6 1 16 11 7 7 4 0 18 11 e tenho que ler ela (o que já fiz) mas não sei trabalhar com os resultados tipo a ordem dos numeros na horizontal é semana dia hora carros motos e caminhoes, que passam no pedagio. Dai preciso exibir por exemplo: Domingo ------- N�mero m�dio de ve�culos: 617,400 N�mero m�dio de carros: 222,000 N�mero m�dio de motos: 233,600 N�mero m�dio de camih�es: 161,800 Rendimento m�dio por semana: R$ 3312,00 o que eu tenho do programa: #include <stdio.h> #include <stdlib.h> int main() { int Semana,dia,hora,carros,motos,caminhoes; FILE *arquivo = fopen("Lista.txt","r"); if(arquivo != NULL) { while (!feof(arquivo)) { fscanf(arquivo,"%d %d %d %d %d %d\n",&Semana,&dia,&hora,&carros,&motos,&caminhoes); } while (arquivo != EOF) { fscanf(arquivo,"%d %d %d %d %d %d\n",&Semana,&dia,&hora,&carros,&motos,&caminhoes); printf("Semana : %d\n",Semana); printf("Dia : %d\n",dia); printf("Hora : %d\n",hora); printf("Carros : %d\n",carros); printf("Motos : %d\n",motos); printf("Caminhoes : %d\n",caminhoes); } //Somando os valores do vetor int soma = 0; int x= 0; for (x=0;x<7;x++) { mveiculos = (soma + Semana[x])/7; } printf("media carros: : %d\n",mveiculos); } fclose(arquivo); } Agradeco desde já...
  6. Vou colocar uma parte do programa, a parte que estou em duvida mas tem mais código pra cima e pra baixo do que vou mostrar. O que acontece é que eu não consigo fazer esse do-while funcionar, já tentei usar tanto o %c quanto o %s no scanf. já tentei usar aspas simples tanto na declaração do char, quanto la dentro da condição do while, tentei varias combinações envolvendo, %c %s ' ' e " ". Eu sei que o certo é usar a aspas simples e o %c porem tentei isso tudo porque não tava dando certo. Quando chega la no scanf do while, ele le a variavel cont mas depois finaliza o programa, nem chega a executar os comandos abaixo dele. obs: já tentei com a biblioteca string.h inserida e não deu, tirei ela a toa mesmo. Código completo: #include <stdio.h> #include <stdlib.h> struct tiposDeVoto{ int nulos; int brancos; int c[4]; }tDV={0,0,{0,0,0,0}}; struct porcVotos{ float nulos; float brancos; float c[4]; }pV={0.0,0.0,{0.0,0.0,0.0,0.0}}; int main(){ /*Em uma eleição para governador concorrem 4 candidatos (1, 2, 3 e 4). No dia da eleição cada um dos N eleitores votaram: • 1, 2, 3 ou 4 para cada candidato. • 0 (zero) para voto em branco. • -1 para voto nulo. Considere que: • O candidato ganha a eleição se fizer 51% ou mais do total de votos. • Se não houver ganhador, os dois melhores irão para o segundo turno. Faça um programa em C que calcule e imprima: • O candidato vencedor (se houver), seguido da porcentagem de votos obtida. Se não houver vencedor, imprima os candidatos que irão ao segundo turno com a respectiva porcentagem de votos obtida. • A porcentagem obtida pelos demais candidatos. • A porcentagem de votos em branco e nulos.*/ tentenovamente: printf("----------------------------\n"); printf(" Urna eleitoral "); printf("\n 1- Tiago\n 2- Pedro\n 3- Alvaro\n 4- Chaves\n 0- Voto em branco\n -1- Voto nulo\n"); printf("------------------------------\n"); int voto=0,i=0; char cont="a"; do{ printf("Digite o voto: "); scanf("%i",&voto); switch (voto){ case 1: tDV.c[0]+=1; break; case 2: tDV.c[1]+=1; break; case 3: tDV.c[2]+=1; break; case 4: tDV.c[3]+=1; break; case -1: tDV.nulos+=1; break; case 0: tDV.brancos+=1; break; default: printf("Escolha invalida!\nTente novamente!\n"); goto tentenovamente; } i++; printf("Quer continuar? [S/N]"); scanf("%s",&cont); } while (cont=="S"); int totalDeVotos=i+1; pV.brancos=tDV.brancos/totalDeVotos; pV.nulos=tDV.nulos/totalDeVotos; for (int k=0;k<4;k++) pV.c[k]=(float)tDV.c[k]/totalDeVotos; int vencedor=0; printf("pv.c[0]: %.2f\n",pV.c[0]); if(pV.c[0]>0.51 && pV.c[0]>pV.c[1] && pV.c[0]>pV.c[2] && pV.c[0]>pV.c[3]){ vencedor=1; printf("Tiago e o vencedor da eleicao com %0.2f %% dos votos",(pV.c[0]*100)); } if(pV.c[1]>0.51 && pV.c[1]>pV.c[0] && pV.c[1]>pV.c[2] && pV.c[1]>pV.c[3]){ vencedor=1; printf("Pedro e o vencedor da eleicao com %0.2f %% dos votos",(pV.c[1]*100)); } if(pV.c[2]>0.51 && pV.c[2]>pV.c[0] && pV.c[2]>pV.c[1] && pV.c[2]>pV.c[3]){ vencedor=1; printf("Alvaro e o vencedor da eleicao com %0.2f %% dos votos",(pV.c[2]*100)); } if(pV.c[3]>0.51 && pV.c[3]>pV.c[0] && pV.c[3]>pV.c[2] && pV.c[3]>pV.c[1]){ vencedor=1; printf("Chaves e o vencedor da eleicao com %0.2f %% dos votos",(pV.c[3]*100)); } /*if (vencedor==0){ printf("vencedor=0"); }*/ return 0; }
  7. Oi, estou fazendo uma lista de exercícios em C, e alguns estão um tanto quanto complicado para mim que sou iniciante. Minha dúvida principal esta nesses 2 exercicios: Faça um programa em C que leia uma matriz 3X5, imprima essa matriz e mostre o seu maior elemento, bem como a linha e a coluna em que esse elemento se encontra. Escreva um programa que leia uma matriz 5 x 5 e um número inteiro n que represente uma linha da matriz (n deve ser <5) . Calcule e escreva a média dos elementos da n-ésima linha (ou seja, da linha escolhida e armazenada em n) .
  8. Boa noite a todos. Alguém pode me passar um algoritmo que simule a pausa feita pela função sleep().É para um projeto que estou trabalhando. Estou precisando dar esta pausa para que o usuário possa ver um dos resultados retornados pelo programa. Estou usando xcode 11.4.1. Desde já agradeço!
  9. Olá, recentemente comecei a fazer o curso CS50, de introdução à ciência da computação para ocupar esse período vago de quarentena. Já na segunda semana do curso, começamos a ver a linguagem de programação C, com a qual nunca tinha trabalhado, e, durante a resolução de um exercício surgiu um problema que me atormenta nos últimos três dias, apesar de sua simplicidade. Meu objetivo com o código é fazer uma "escada" com os "jogos da velha", indo de 1 até 8 caracteres de altura, formando imagens como a da imagem de fundo branco. Mas infelizmente só consigo obter o output da imagem de fundo preto. #include <cs50.h> /* biblioteca da cs50 */ #include <stdio.h> int main(void) { int n; /*obtém a altura desejada*/ do { n = get_int("Height: "); } while (n < 1 || n > 8); for (int i = 1; i <= n; i++) /*loop para gerar nova linha*/ { for (int f = n - 1; f > 0; f -= 1) /*loop para os pontos [há problema na execução]*/ { printf("."); } for (int j = 0; j < i; j++) /*loop para os jogos da velha*/ { printf("#"); } printf("\n"); } } No código estou usando a library da cs50, que pode ser obtida neste link https://github.com/cs50/libcs50/releases/tag/v10.1.0 Sinto muito se estou cometendo erros grotescos ou se meus comentários no código são desnecessários, estou apenas começando . Obrigado pela atenção😀
  10. Boa noite, pessoal. Bom, tenho um código que atualiza os valores de uma matriz 2D 151 x 383, 6000 vezes. E preciso salvar cada uma delas numa matriz separada. Então a dimensão dessa matriz será 121x383x6000. Seria algo como: for (n=0;n<6000;n++){ for(i=0;i<151;i++){ for (k=0;k<383;k++){ P2 = 'calculos'; P3[n] = P2; }}} A dúvida é como construir a matriz P3 e como fazer a indexação dela no lugar dos colchetes... Grato!
  11. Meu professor me pediu para fazer esse exercicio de passar numeros inteiros para extenso mas não faço ideia de como o fazer... Ajudem me pfv!!
  12. Bom dia galera! Seguinte estou com uma duvida bem básica acredito eu em questão de um exercício que estou tentando resolver. Consegui desenvolver o código tranquilo compila sem erro nenhum, mas quando eu peço as entradas ao usuário, a primeira executa legal, o usuário escreve a entrada e quando o enter e apertado a próxima entrada que deveria pedir ao usuário executa mas não deixa o usuário entrar com a informação finalizando o código. Já tentei mudar de programa pra vê se era problema com o compilador, mas o mesmo erro acontece, lembrando que ate com códigos pegos na internet acontece isso. Para melhor compreensão segue a questão código e o print do problema. 1 . Uma certa empresa fez uma pesquisa de mercado para saber se as pessoas gostaram ou não do seu último produto lançado. Para isto, coletou o sexo do entrevistado e a sua resposta (simou não). Sabendo que foram entrevistadas 150 pessoas, fazer um algoritmo que calcule e mostre ao final:•O número de pessoas que responderam sim;•O número de pessoas que responderam não;•A percentagem de pessoas do sexo feminino que responderam sim;•A percentagem de pessoas do sexo masculino que responderam não;Para a resposta SIM/NÃO. Utilize uma variável do tipo CHAR, que armazena S ou N, ou use uma variável do tipo INT que armazena 1 (para SIM) e 2 (para NÃO). // declaração de bibliotecas #include <stdio.h> #include <locale.h> #include <stdlib.h> #pragma warning #pragma warning(disable: 4996); //declaração das variaveis globais char sex, resp; // variaveis de escolha de sexo e resposta (s para sim e n para não int x, counter_resps = 0, counter_respn = 0 ,counter_sexm = 0, add1 = 0 , add2 = 0 , add3 = 0 , add4 = 0;//um_1 = 0, sum_2 = 0; float m_percent, f_percent; // int main () { setlocale(LC_ALL, "Portuguese"); for (x = 3; x <= 3; x++) { printf("\nVoce gostou do nosso pruduto ? (s = sim / n = não ): "); scanf("%c", &resp); printf("\n Seu sexo ? (f= feminino / m = masculino ): "); scanf("%c", &sex); if (sex == 'f') { add1++; } else { counter_sexm++; if (sex == 'm') add2++; } if (resp == 's') { counter_resps++; add4++; if (resp == 'n'){ counter_respn++; add3++; } } } m_percent + (float)(add1 * 100) / (add1 + add2); f_percent + (float)(add2 * 100) / (add1 + add2); printf("\nO numero de pessoas que responderam não e %d\n", counter_respn); printf("\nO numero de pessoas que responderam sim e %d\n", counter_resps); printf("\nA porcentagem de pessoas do sexo feminino que responderam sim e %f\n", m_percent); printf("\nA porcentagem de pessoas do sexo masculino que responderam não e %f\n", f_percent); return 0; }
  13. Pessoal, estou com dificuldades para fazer um exercício do livro do Deitel, eis o qual eu fiz: Esse eu fiz beleza.. fácil. Mas depois ele pede para imprimir um quadrado vazado, este não sei se fiz da melhor forma. Gostaria de saber se existe alguma forma melhor e mais 'inteligente' de se fazer, ficou muito confuso os 'for': #include <stdio.h> #include <stdlib.h> int main() { int numero, i,x,y,aux; printf("Programa imprime quadrado \n\n\n"); printf("Digite o tamanho do quadrado: "); scanf("%d", &numero); aux=numero-2; printf("\n\n\n\n"); for (x=0;x<numero;x++) printf("*"); for (i=0;i<aux;i++){ printf("\n*"); for(x=0; x<aux;x++) printf(" "); for(x=0; x<1;x++) printf("*"); } printf("\n"); for (x=0;x<numero;x++) printf("*"); return 0; }
  14. Boa noite, Alguém poderia me ajudar na logica da programação, estou fazendo um programa para identificar se o numero sera positivo e negativo , par ou impar. quando o numero e digitado negativo,a condição só exibe a informação "numero negativo e par" e não o motivo. SEGUE O PROGRAMA: #include <stdio.h> #include <stdlib.h> int main() { int num1,condicao; printf("Digite um numero :"); scanf("%d",&num1); condicao = num1 % 2; printf("%d", condicao); if (condicao == 0 && num1 > 0) { printf("Numero positivo e par"); } else if (condicao =! 0 && num1 >0) { printf("Numero positivo e impar"); } else if ( condicao == 0 && num1 < 0 ) { printf("Numero negativo e par"); } else if ( condicao =! 0 && num1 < 0 ) { printf("Numero negativo e impar"); } }
  15. Bom dia pessoal. Estou com um problema na hora da execução de um programa simples que fiz durante meu estudo sobre "structs". Simplesmente o programa não faz a leitura correta das letras que possuem acento. #include<stdio.h> #include<stdlib.h> #include<locale.h> main() { setlocale(LC_ALL,"portuguese"); struct dados { char name[40], disciplina[30]; float nota1, nota2; } aluno; printf("\n\t\t\t\t------------ Cadastro de Aluno ------------\n"); printf("\nInsira seu nome....: "); fflush(stdin); fgets(aluno.name, 40, stdin); printf("\n\nDisciplina.........: "); fflush(stdin); fgets(aluno.disciplina, 30, stdin); printf("\n\nInsira a 1° nota...: "); scanf("%f",&aluno.nota1); printf("\n\nInsira a 2° nota...: "); scanf("%f",&aluno.nota2); printf("\n\n"); printf("\n\t\t\t\t------------ Lendo dados inseridos ------------\n"); printf("\nNome...........: %s\n", aluno.name); printf("Disciplina.....: %s\n", aluno.disciplina); printf("Nota 1.........: %.2f\n", aluno.nota1); printf("Nota 2.........: %.2f\n", aluno.nota2); return 0; }
  16. Boa tarde! Estou trabalhando neste projeto e esse erro tem me tirado o sono. O projeto é um cadastro de petshop. E o erro parece estar associado a função limparBuffer(), mas sinceramente não sei como tirar esse bug. Estou usando xcode 11.2.1. Vou postar o código. // //main.c #include <stdio.h> #include <stdlib.h> #include "limpaBuf.h" #include "messages.h" #include "animal.h" #include "menu.h" int main(int argc, const char * argv[]) { Animal *cadastro; char escolha = '0'; cadastro = malloc(sizeof(Animal)); do { escolha = menu(); switch (escolha) { case '1': cadastro = cadastroGeral(); break; case '2': procurarAnimal(cadastro); break; default: break; } } while (escolha != '3'); return 0; } // // menu.c #include <stdio.h> #include <stdlib.h> #include "menu.h" #include "limpaBuf.h" char menu(void){ char escolha; system("clear"); printf("Cadastro de Animais\n\n\n"); printf("[1] -- Cadastrar\n"); printf("[2] -- Encontrar\n"); printf("[3] -- Sair\n"); printf("\n\n\n\n?: "); escolha = getchar(); limparBuffer(); return escolha; } #include <stdio.h> #include <stdlib.h> #include <string.h> #include "animal.h" #include "limpaBuf.h" #include "messages.h" Animal* cadastrarAnimal(void){ Animal* animal; system("clear"); printf("Cadastro de Animal\n\n\n"); animal = malloc(sizeof(Animal)); printf("Nome: "); fgets(animal->nome, sizeof(animal->nome), stdin); printf("Dono: "); fgets(animal->dono, sizeof(animal->dono), stdin); printf("Idade: "); scanf("%d", &animal->idade); limparBuffer(); printf("Raca: "); fgets(animal->raca, sizeof(animal->raca), stdin); animal->internado = false; animal->vacinado = false; return animal; } Animal* cadastroGeral(void){ Animal* animal; char escolha = 's'; int posicao_ponteiro = 0; animal = malloc(sizeof(Animal)); while (escolha == 's' || escolha == 'S') { if (posicao_ponteiro == 0) { animal = malloc(sizeof(Animal)); animal = cadastrarAnimal(); }else{ animal = realloc(animal, posicao_ponteiro * sizeof(Animal)); animal += posicao_ponteiro; animal = cadastrarAnimal(); } showMessage("Cadastro realizado com sucesso!"); printf("\n\nCadastrar outro? "); escolha = getchar(); limparBuffer(); if (escolha == 's' || escolha == 'S') { posicao_ponteiro++; } } return animal; } void procurarAnimal(Animal* cadastro){ char nome_animal[42]; int posicao_ponteiro = 0; int encontrado = 0; system("clear"); printf("Busca de Animal\n\n"); printf("Nome Animal: "); fgets(nome_animal, sizeof(nome_animal), stdin); system("clear"); while(cadastro) { if (strcmp(cadastro->nome, nome_animal) == 0) { encontrado = 1; break; }else{ posicao_ponteiro++; } cadastro += posicao_ponteiro; } if (encontrado == 1) { printf("Animal encontrado\n\n"); printf("Nome: %s\n", cadastro->nome); printf("Raça: %s\n", cadastro->raca); printf("Dono: %s\n", cadastro->dono); printf("Idade: %d\n", cadastro->idade); if (cadastro->vacinado == true) { printf("Vacinado: sim\n"); }else{ printf("Vacinado: não\n"); } if (cadastro->internado == true) { printf("Interno: sim\n"); }else{ printf("Interno: não\n"); } }else{ showMessage("Animal não cadastrado!"); } } // // messages.c #include <stdio.h> #include <stdlib.h> void showMessage(const char* msg){ int contador; system("clear"); for (contador = 1; contador <= 80; contador++) { printf("-"); if (contador == 80) { printf("\n"); } } printf("-"); for (contador = 1; contador <= 78; contador++) { printf(" "); } printf("-\n"); printf("-"); for (contador = 1; contador <= 78; contador++) { printf(" "); } printf("-\n"); printf("-"); for (contador = 1; contador < 25; contador++) { printf(" "); } printf("%s", msg); for (contador = 1; contador < 24; contador++) { printf(" "); } printf("-\n"); for (contador = 1; contador <= 78; contador++) { printf(" "); } printf("-\n"); printf("-"); for (contador = 1; contador <= 78; contador++) { printf(" "); } printf("-\n"); for (contador = 1; contador <= 80; contador++) { printf("-"); if (contador == 80) { printf("\n"); } } } // // limpaBuf.h #include <stdio.h> #ifndef limpaBuf_h #define limpaBuf_h void limparBuffer(){ char c; while ((c = getchar()) != '\n' && c != EOF) { } } #endif /* limpaBuf_h */
  17. Galera, estou fazendo um programa de manipulação de vetores, e me deparei com esse problema: eu entro com os valores do vetor, mas quando peço para exibi-los, o programa exibe alguns valores errados, que sempre mudam cada vez que eu executo. Acredito que seja um problema de memória que precisa ser limpa, queria saber como fazer isso em C. #include <stdio.h> #include <stdlib.h> int funcao(int v[10]){ int i, maior, menor, j, prim, ult; int *vet = malloc(10*sizeof(&v)); float m=0; //Cálculo da média: for(i = 0; i < 10; i++) m = m + v[i]; printf("\nMedia: %.2f", m/10); //Posição do maior: for(i = 0; i < 10; i++){ maior = v[i]; for(j = 0; j < 10; j++){ if (v[j] > maior) maior = v[j]; }} printf("\nO maior elemento é: %d.\nO endereço de memória é: %d.\n", maior, &maior); //Posição do menor: for(i = 0; i < 10; i++){ menor = v[i]; for(j = 0; j < 10; j++){ if (v[j] < menor) menor = v[j]; }} printf("\nO menor elemento é: %d.\nO endereço de memória é: %d.\n", menor, &menor); //Endereços da primeira e última posição: for(i = 0; i < 10; i++){ if (i == 0) prim = v[i]; if (i == 9) ult = v[i]; } printf("\nO endereço da primeira posição do vetor é %d e do último é %d\n", &prim, &ult); free(v); return *vet; } int main(){ int i, v[10], m = 0; for(i = 0; i < 10; i++){ scanf("%d", &v[i]); m = m + v[i]; if (v[i] > (m/10)) v[i] = v[i] - (m/10); } for(i = 0; i < 10; i++) printf("%d ", v[i]); funcao(v); return 0; } Abaixo segue um print do programa sendo executado. Alguém sabe como contornar o problema?
  18. Problema foi resolvido, vou deixar o código como ficou 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!
  19. Boa noite! Preciso resolver o seguinte problema: Elabore um programa em C que processe uma pesquisa sobre algumas características físicas da população de uma certa região. Devem ser coletados os seguintes dados referentes a cada habitante para serem analisados: A) Quantidade de Homens e Mulheres que responderam a pesquisa B) O nome e a idade do Habitante mais velho C)O nome e a quantidade de mulheres com idade de 18 a 35 anos D) O nome e a idade dos homens loiros e de olhos azuis. *Meu grande problema é: Quando peço para continuar a pesquisar e inserir nome, cor dos olhos, cor dos cabelos e idade, ao invés dele ir para a primeira pergunta: "Qual seu nome?", ele vai para "Qual seu sexo?" e segue com as outras perguntas. Além do mais não consegui colocar uma string usando um vetor de caracteres. Imprimi o nome com um carácter somente: "A", "B","C" e assim por diante. Alguém pode me dizer como resolver esses problemas? P.s: Abaixo segue o meu código em C Obrigada desde de então! P.s.: Sou iniciante em programação e linguagem C, agradeço muito a ajuda de vocês. #include <stdio.h> #include <stdlib.h> #include <string.h> int main (){ struct senso{ char nome; int idade,cc,co,sexo; }; struct senso lista[20]={0}; int i=0,x,Qh=0,Qm=0,ih_velho,qtd18_35=0,id_loiro_azul[10]={0}; char nh_velho,n18_35[10]={0},nhm_loiro_azul[10]={0}; while (i<=2){ printf ("Qual é o seu nome?\n"); scanf("%c",&lista.nome); printf ("Qual é o seu sexo?\n[1]M\n[2]F\n"); scanf ("%d",&lista.sexo); printf ("Qual é a sua idade?\n"); scanf ("%d",&lista.idade); printf ("Qual é a cor do seu cabelo?\n[1]Loiro\n[2]Castanhos\n[3]Pretos\n"); scanf ("%d",&lista.cc); printf ("Qual é a cor dos seus olhos?\n[1]Azuis\n[2]Verdes\n[3]Castanhos\n"); scanf ("%d",&lista.co); printf("Deseja continuar?\n[1]Sim\n[2]Não\n"); scanf("%d",&x); system("clear"); /* */ if (x==1){ i++; } /* Caso a condição for diferente 1 o acumuldor receberá 1000 fzendo com que o programa encerre, pois a condição do while está enquanto i for menor igual a 3 */ else { i=1000; } } /* 1 - Quantidade de homens e mulheres que responderam a pesquisa */ for (i=0;i<=2;i++){ if (lista.sexo==1) { Qh=Qh+1; }else { if (lista.sexo==2){ Qm=Qm+1; } } } printf ("\nTotal Homens/Mulheres:\n[Homens]%d\n[Mulheres]%d\n",Qh,Qm); /* 2 - Nome e idade habitante mais velho */ ih_velho=0; for (i=0;i<=2;i++){ if (ih_velho<lista.idade) { nh_velho = lista.nome; ih_velho = lista.idade; } } printf ("\nNome/Idade habitante mais velho:\n[Nome]%c\n[Idade]%d\n",nh_velho,ih_velho); /* 3.1 - Nome de mulheres com idade de 18 a 35 anos */ for (i=0;i<=2;i++){ if ((lista.idade>=18 || lista.idade<=35) && lista.sexo==2) { for (i=0;i<=2;i++){ n18_35=lista.nome; } } } printf ("\nNomes das mulheres entre 18 a 35:\n"); for (i=0;i<=2;i++){ printf ("[Nome]%c\n",n18_35); } /* 3.2 - Quantidade de mulheres com idade entre de 18 a 35 anos */ for (i=0;i<=2;i++){ if ((lista.idade>=18 || lista.idade<=35) && lista.sexo==2){ qtd18_35 = qtd18_35 +1; } } printf ("[Qtd]:%d\n",qtd18_35); /* 4. O nome e a idade dos homens loiros e de olhos azuis */ for (i =0;i<=2;i++){ if (lista.sexo==1 && lista.cc==1 && lista.co==1){ for (i=0;i<=2;i++){ nhm_loiro_azul=lista.nome; id_loiro_azul=lista.idade; } } } printf ("\nHomem loiro/olho azul:\n"); for (i=0;i<=2;i++){ printf ("[Nome/Idade]:%c/%d\n",nhm_loiro_azul,id_loiro_azul); } return 0; }
  20. ola!! boa tarde, alguém pode me ajudar? não sei exatamente o erro do meu codigo //Bibliotecas usadas #include <stdio.h> #include <string.h> #include <stdlib.h> #include <ctype.h> #include <math.h> #include <stdbool.h> void valida_sexo(); int main () { printf("Digite seu sexo:\n"); valida_sexo(); system("pause"); return 0; } void valida_sexo(){ char sexo[2]; int i; scanf("%s",sexo); while(sexo<1){ if(sexo=="f"|| sexo=="F"){ printf("Válido"); } if (sexo=="m"|| sexo=="M"){ printf("Válido\n"); } } else { printf("invalido\n"); } }
  21. E AI MEU POVO, GOSTARIA DE UMA AJUDINHA, TENHO ESSE SISTEMA DE CADASTRO QUE LÉ OS DADOS, ARMAZENA NAS LINHAS DA MATRIZ E DEPOIS IMPRIME NA TELA O CADASTRO, EU GOSTARIA DE SABER COMO FAÇO PRA REMOVER O ÍNDICE ESPECIFICADO PELO USUÁRIO, É O CÓDIGO VERIFICAR SE O O ÍNDICE DIGITADO PELO USUÁRIO EXISTE, E SE EXISTIR, GOSTARIA QUE ELE EXCLUÍSSE OS DADOS DESSE ÍNDICE, E OS ÍNDICES POSTERIORES RETROCEDESSEM, DESDE JÁ OBRIGADO! #include <stdio.h> #include <stdlib.h> #include <string.h> #define SIZE 100 void cadastro(); void pesquisa(); void lista(); void remover(); char nome[SIZE][50]; char email[SIZE][50]; int cpf[SIZE]; char op; int op2; int main(void) { int r; do{ system("cls"); printf("\n====MENU=====\n"); printf("1 - CADASTRO\n"); printf("2 - LISTAR TODOS\n"); printf("3 - PESQUISAR\n"); printf("4 - EXCLUIR\n"); printf("5 - SAIR\n"); scanf(" %c", &op); switch(op){ case '1': cadastro(); break; case '2': lista(); system("pause"); break; case '3': pesquisa(); break; case '4': remover(); break; default: printf("\nOpcao invalida\n"); system("pause"); break; } }while(op>4); } void remover(){ int posicao; int i; lista(); printf("\nCodigo Para remover: "); scanf("%d", &posicao); for(i=0; i<SIZE; i++){ if(posicao == nome[i]){ printf("\nAluno excluido!\n"); system("pause"); }else{ break; } i--; } } /*FUNCAO PARA IMPRIMIR OS CADASTROS*/ void lista(){ int i; for(i=0; i<SIZE; i++){ if(cpf[i]>0){ printf("\nCodigo: %d", i+1); printf("\nNome: %s", nome[i]); printf("\nEmail: %s", email[i]); printf("\nCPF: %d", cpf[i]); printf("\n++++++++++++++++++++++\n"); }else{ break; } } } /*FUNCAO DE CADASTRO*/ void cadastro(){ static int linha; do{ printf("\nDigite o nome: "); scanf("%s", &nome[linha]); printf("\nDigite o email: "); scanf("%s", &email[linha]); printf("\nDigite o CPF: "); scanf("%d", &cpf[linha]); linha++; printf("\n1 - continuar \tSAIR - Qualquer tecla"); scanf("%d", &op2); }while(op==1); } /*FUNCAO PARA PESQUISAR O USUARIO já CADASTRADO*/ void pesquisa(){ int cpfPesquisa; char emailPesquisa[50]; char nomePesquisa[50]; int i; do{ printf("\nl - CPF: "); printf("\n2 - EMAIL: "); printf("\n3 - NOME: "); scanf(" %c", &op); switch(op){ case '1': printf("Digite o CPF: "); scanf("%d", &cpfPesquisa); for(i=0; i<SIZE; i++){ if(cpf[i] == cpfPesquisa){ printf("\nNome: %s", nome[i]); printf("\nEmail: %s", email[i]); printf("\nCPF: %d", cpf[i]); }else{ printf("\nNao a cadastro com esse CPF\n"); system("pause"); } } break; case '2': printf("Digite o seu email: "); scanf("%s", emailPesquisa); for(i=0; i<SIZE; i++){ if(strcmp(email[i], emailPesquisa) == 0){ printf("\nNome: %s", nome[i]); printf("\nEmail: %s", email[i]); printf("\nCPF: %d", cpf[i]); }else{ printf("\nNao a cadastro com esse Email\n"); system("pause"); } } break; case '3': printf("digite o nome: "); scanf("%s", &nomePesquisa); for(i=0; i<SIZE; i++){ if(strcmp(nome[i], nomePesquisa) == 0){ printf("\nNome: %s", nome[i]); printf("\nEmail: %s", email[i]); printf("\nCPF: %d", cpf[i]); }else{ printf("\nNao a cadastro com esse Nome\n"); system("pause"); } } break; default: printf("\n Valor invalido"); system("pause"); pesquisa(); break; } printf("\n1 - continuar \tSAIR - Qualquer tecla"); scanf("%d", &op2); }while(op==1); }
  22. Me ajudem por favor, estou fazendo um menu de alunos, com lista encadeada, que deve ter função pra inserir, excluir, printar todos, até aí tudo bem, mas tem que ter uma função que pode pesquisar um aluno específico na lista, e tem que conseguir achar mesmo que o nome não teja inteiro, com parte do nome já tem que aparecer o aluno. Além, quando ativa essa função, ainda tem que ser acionada uma outra lista encadeada, mas de matérias, que tem funções pra cadastrar matéria, excluir, editar, printar as matérias do aluno, etc. Não sei se ficou tão claro o que tenho que fazer, mas to tentando fazer, se alguém puder ajudar. eu só estou com dúvidas na hora de pesquisar por parte do nome, e na hora que que chama a struct de matérias dos alunos
  23. Trabalho de Estrutura de Dados 1. Utilizando as funções primitivas para manipulação de pilha, escreva um programa em C para determinar se uma string de caracteres de entrada é da forma: xCy onde x é uma string consistindo nas letras 'A' e 'B', e y é o inverso de x (isto é, se x = "ABABBA", y deve equivaler a "ABBABA"). Em cada ponto, você só poderá ler o próximo caractere da string. 2. Escreva um programa em C que contenha funções para executar cada uma das seguintes operações: a. Incluir um elemento no final de uma lista. b. Concatenar duas listas. c. Liberar todos os nós numa lista. d. Inverter uma lista de modo que o último elemento se torne o primeiro, e assim por diante. e. Eliminar o último elemento de uma lista. f. Eliminar o enésimo elemento de uma lista. g. Combinar duas listas ordenadas numa única lista ordenada. h. Formar uma lista contendo a união dos elementos de duas listas. i. Formar uma lista contendo a intersecção dos elementos de duas listas. j. Inserir um elemento depois do enésimo elemento de uma lista. k. Eliminar cada segundo elemento de uma lista. l. Retornar a soma dos inteiros numa lista. m. Retornar o número de elementos numa lista
  24. Bom dia pessoal, tudo bem? Então galera meu professor pediu para a gente desenvolver um programa em C que encontre todos os pares de números amigos entre 1 e 1.000 (Para aqueles que não sabem oque é um numero amigo basta acessar esse link https://pt.wikipedia.org/wiki/Número_amigo). Então eu desenvolvi o programa mas não esta dando o resultado esperado já que de 1 a 1.000 os únicos pares de números amigos existente é 220 e 284 e não são esses números que estão sendo imprimidos na tela. Enfim vou colar meu código aqui e gostaria que vocês me ajudassem a identificar onde esta o meu erro e corrigi-lo :) ------------------------------------------------------------------------------------------------------------------------------------------------ CÓDIGO --------------------------------------------------------------------------------------------------------------------------------------------------- #include <stdio.h> int main () { int n1, divisor, r, soma1 = 0, somareal; int n2, divisor2, r2, soma2 = 0,somareal2; for (n1 = 1, n2 = 1; n1 <= 1000; n1++, n2++) { for (divisor = 1, divisor2 = 1; divisor <= 1000; divisor++, divisor2++) { if (n1 % divisor == 0) { r = n1 / divisor; soma1 += divisor; //printf("\nN1 = %d\t DIVISOR = %d\t N1 / DIVISOR = %d\n",n1, divisor, r); } if (n2 % divisor2 == 0) { r2 = n2 / divisor2; soma2 +=divisor2; //printf("\nN2 = %d\t DIVISOR2 = %d\t N2 / DIVISOR2 = %d SOMA = %d\n",n2, divisor2, r2, soma2); } } somareal = soma1 - n1; somareal2 = soma2 - n2; //printf("\nSOMA: %d\n",somareal); //printf("SOMA2: %d\n",somareal2); if (n1 == somareal2 && n2 == somareal) { printf("N1 %d e SOMA2 %d ",n1,somareal2); printf("N2 %d e SOMA %d são NUMEROS AMIGOS!\n",n2,somareal); } //printf("\n--------------------------------------------\n"); soma1 = 0; soma2 = 0; } return 0; } ----------------------------------------------------------------------------------------------------------------------------------------- FIM DO CÓDIGO----------------------------------------------------------------------------------------------------------------------------------------------- Obrigada pessoal!
  25. '''' #include <stdio.h> #include <stdlib.h> #include <conio.h> int main() { int idade, anoatual = 2019, anonascimento; char sexo; printf("\nDigite o ano de seu nascimento:"); scanf("%d", &anonascimento); printf("\n Digite [F] para femenino e [M] para masculino"); scanf("%c", &sexo); idade = anoatual - anonascimento; if (sexo == 'M' && idade == 18) { printf("Serviço Militar Obrigatorio"); } else { printf("Isento de serviço militar obrigatorio"); } system("pause"); return(0); } '''
×
×
  • Create New...