Tabuada e porcentagem em C
Publicado por Perfil removido (última atualização em 04/11/2011)
[ Hits: 18.797 ]
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 */
funcsoma2.c - Soma 2 pontos flutuantes
Parte 5 - Sessão de estudo sobre VETORES
Implementação de limpar a tela em C
Calcula média de notas do aluno
Nenhum comentário foi encontrado.
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (15)
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)
Pendrive não formata de jeito nenhum (4)