Calculadora simples em C
Publicado por Gabriel Falcão Gonçalves de Moura 01/11/2006
[ Hits: 9.548 ]
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...
}
Tipos de ordenação - BubbleSort - SelectSort - Shellsort - Mergesort
Nenhum comentário foi encontrado.
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Gentoo binário em 2026: UEFI, LUKS, Btrfs e Systemd
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Gentoo: Trocando wpa_supplicant pelo iwd no NetworkManager (Systemd)
O que houve com slackware ??? (12)
Alterar conteúdo de dica [RESOLVIDO] (3)
Vou destruir sua infância:) (5)









