Tabuada e porcentagem em C
Publicado por Perfil removido (última atualização em 04/11/2011)
[ Hits: 19.017 ]
Esta é uma pequena calculadora em C que tem funções para calcular a tabuada e porcentagem.
O código tem um pequeno problema que ocorre muito com programadores iniciantes, assim como eu, pois ele dá um loop infinito caso o usuário não entre com valores válidos para o programa.
Se o loop infinito ocorrer com você, basta pressionar CTRL + C para encerrar o programa.
Apesar do problema, espero que este código que estou compartilhando possa ajudar muitas pessoas.
Abraços.
#include <stdio.h> /* Esta função faz o cálculo da tabuada, obtendo os dados abstraídos da função calcular_tabuada */ int resultado_tabuada (tabuada){ int multiplicador; multiplicador=0; int resfinal; while (multiplicador<=10) { resfinal = tabuada * multiplicador; printf("\n%d vezes %d é igual a %d",tabuada,multiplicador,resfinal); multiplicador++; } return resfinal; } /* Final da função */ /* Função que abstrai os dados do usuário para o cálculo da tabuada */ int calcular_tabuada () { int tabuada; printf("\nDigite um número para ver a sua tabuada: "); scanf("%d",&tabuada); if (tabuada==0) printf ("Que tal digitar um número da próxima vez?"); else resultado_tabuada (tabuada); return 0; } /* Função encerrada */ /* Função para calcular a porcentagem de um número */ int porcentagem () { float numero1; float numero2; float res_porcento; puts ("Digite o número do qual será calculada a porcentagem: "); /* A função puts exibe uma mensagem na tela e coloca uma nova linha após a exibição do conteúdo */ scanf ("%f",&numero1); /* Monitora a entrada do usuário */ printf ("\nDigite outro número para completar o cálculo: "); scanf ("%f",&numero2); /* Monitora a entrada do usuário */ res_porcento = numero2 * 100 / numero1; /* Efetua o cálculo em si e armazena em uma variável*/ printf ("\n%f é %f porcento de %f", numero2, res_porcento, numero1); /* Mostra na tela o resultado */ menu (); /* Instrui a retornar para a função menu */ } /* Fim da função para calcular a porcentagem de um número */ /* Função a ser executada quando o programa deve ser encerrado */ int sair () { exit(0); } /* Fim da função de encerramento do programa */ /* Exibe um menu na tela e pede para o usuário escolher uma opção */ int menu () { int cod_opt; /* declaração de variável */ do { printf ("\n\n1\tTabuada de um número\n"); printf ("2\tPorcentagem de um número\n"); printf ("3\tSair do programa\n\n"); printf ("Digite uma opção: "); scanf ("%d",&cod_opt); /* monitora a entrada do usuário */ switch (cod_opt) /* analisa a entrada do usuário */ { case 0: printf ("Que tal digitar um número da próxima vez?"); break; case 1: calcular_tabuada(); break; case 2: porcentagem(); break; case 3: sair(); } } while(cod_opt!='1' && cod_opt!='2' && cod_opt!='3'); /* Enquanto o valor da variável cod_opt não for igual aos valores citados continua-se a executar a função */ } /* Fim da função */ /* Esta é a função principal do programa, ela exibe uma mensagem e chama a função menu */ int main(int argc, char **argv) { printf ("\nCALCULADORA MATEMÁTICA PARA O TERMINAL"); menu (); } /* Fim do programa */
De quantas maneiras pode-se preencher um tabuleiro de xadrez com dominós
Função switch q armazena sequencias
Nenhum coment�rio foi encontrado.
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Converter os repositórios Debian para o novo formato com as chaves
Instalando Spotify no Debian 13
Realizar overclock no Miyoo Mini (plus ou normal)
Monitoramento pfsense com zabbix (4)
Erro na inicialização do Debian como resolver (5)
Dúvidas sobre a originalidade de conteúdos online (11)
linux mint reconhece microfone de lapela como fone de ouvido sem micro... (4)