Calculadora simples em C
Publicado por Gabriel Falcão Gonçalves de Moura 01/11/2006
[ Hits: 9.480 ]
Homepage: http://gabrielfalcao.com
Neste exemplo qualquer indivíduo com facilidade de programação aprenderá a tratar procedimentos simples em C e conseguirá fazer sua própria calculadora.
Cada linha do código está comentado em linguagem simples e clara.
O script é voltado à pessoas que pretendem aprender C ou estão começando na linguagem.
////Declaração das bibliotecas básicas para manipulação de entrada/saída de dados
#include <stdlib.h>
#include <stdio.h>
// #include <string.h> - descomente no caso de precisar trabalhar com strings...
///////////
int main() //programa principal(MAIN), é tratado como uma função...
{
int choice; //declarei que a variável choice é do tipo numero inteiro
float num1, num2, res; //decalrei que as variaveis num1, num2 e res são do tipo ponto flutuante(numero decimal)
printf("\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\nCalculadora\n"); //printf imprime formatado
printf("\xDC\xDC\xDC\xDC\xDC\xDC\xDC\xDC\xDC\xDC\xDC");//user o printf pra imprimir o menu
printf("\n\xDB\xDB\xDBMENU\xDB\xDB\xDB\xDB\n"); // método printf(frase + formatação, variavel)
printf("\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\n\n"); // formatações basicas: "%i" inteiro, "%s" string, "%f" decimal(flutuante)
printf("1- SOMA\n");// note que o \n desce uma linha e que \xDB imprime um quadradinho
printf("2- SUBTRACAO\n");
printf("3- MULTIPLICACAO\n");
printf("4- DIVISAO\n");
printf("5- SAIR\n");
scanf("%i",&choice); //scanf aguarda o usuario digitar algo e armazena na variavel escolhida precedida de & ("e" comercial), e só lê o que foi formatado, no caso ele lê %i ou seja, numero inteiro
if (choice == 5) { return 0; } //se choice = 5 > return 0 que fecha o programa... note que = dá atribuição exemplo choice = 2+2. choice valerá 4. Mas choice == 4 está comparando...
printf("Digite o primeiro termo:\n");
scanf("%f",&num1); //dessa vez o scanf lê numeros decimais flutuantes...
printf("Digite o segundo termo:\n");
scanf("%f",&num2);
switch(choice){ //escolha de caso...| Tradução: escolha(choice)
case 1: //para choice == 1 faça:
res=num1+num2; // res= num1 + num2
break; // break = freio de execução
case 2: //para choice == 2 faça...
res=num1-num2; //etc...etc...
break; //etc...etc...
case 3: //etc...etc...
res=num1*num2; //etc...etc...
break; //etc...etc...
case 4:
res=num1/num2;
break;
}
printf("\n\nO resuldado e: %f\n", res); //imprime o valor de res
printf("\n\nPressione quialquer tecla para sair...", res); //etc...etc...
getche(res); //o getche tem uma função parecida com o scanf coma diferença do usuario nao precisar pressioanr ENTER no final, no caso ele lê qualquer tecla e aramzena an variável, no caso eu usei a propria avriavel res que não terá mais interesse já que o programa chegou ao final...
return 0; //fecha o programa
//detalhe: return 0; só é usado quando o prograam principal(MAIN) for do tipo int, se for do tipo void não funciona...
}
De quantas maneiras pode-se preencher um tabuleiro de xadrez com dominós
Fibonacci Recursivo e Não Recursivo
Nenhum comentário foi encontrado.
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Como realizar um ataque de força bruta para desobrir senhas?
Como usar Gpaste no ambiente Cinnamon
Atualizando o Fedora 42 para 43
Pergunta: Meu teclado não está respondendo direito como e consertar? (2)
Secure boot, artigo interessante, nada técnico. (6)
SQLITE não quer funcionar no LINUX LMDE6 64 com Lazaruz 4.2 64bit (n... (0)









