Tabuada e porcentagem em C
Publicado por Perfil removido (última atualização em 04/11/2011)
[ Hits: 18.601 ]
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 */
Transforma a quantidade de dias digitados em anos, meses e dias
Salario bruto e liquido de um funcionario
Programa simples em C++ para manipular dados de usuários!
Nenhum comentário foi encontrado.
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
E a guerra contra bots continua
Tradução do artigo do filósofo Gottfried Wilhelm Leibniz sobre o sistema binário
Conheça o firewall OpenGFW, uma implementação do (Great Firewall of China).
Instalando o FreeOffice no LMDE 6
Anki: Remover Tags de Estilo HTML de Todas as Cartas
Colocando uma opção de redimensionamento de imagem no menu de contexto do KDE
Não consigo acessar os modos de desempenho (1)
Criar um script para testar pen drive (5)
Problema com alias usando locate (4)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba