Tabuada e porcentagem em C
Publicado por Perfil removido (última atualização em 04/11/2011)
[ Hits: 19.084 ]
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 */
Ordenação de vetor pelo método Bubblesort
Nenhum comentário foi encontrado.
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Programa fora de escala na tela do pc (42)
\Boot sem espaço em disco (Fedora KDE Plasma 42) (5)
Preciso recuperar videos *.mp4 corrompidos (0)









