Calculadora simples com uso de switch , funções e #define

Publicado por fechado 04/02/2008

[ Hits: 12.990 ]

Download calculadora.c




Calculadora bem simples para estudo das funções , do switch e do #define.

  



Esconder código-fonte

#include <stdio.h>
#include <stdlib.h>
#define ln printf("\n") 

int main(void) {
 menu();
  return 0;
}
void menu(void) {
 int opt;
 float x,y;
 system("clear");
 ln;printf("Calculadora simples.");ln;
 printf("Digite o numero da operacao: (1 soma, 2 divisao, 3 multiplicacao, 4 divisao, 5 sair: ");
 scanf("%i",opt);
 switch(opt) {
  case 1:ln;printf("Digite x: ");scanf("%f",x);ln;printf("Digite y: ");scanf("%f",y);ln;csom(x,y);break;
  case 2:ln;printf("Digite x: ");scanf("%f",x);ln;printf("Digite y: ");scanf("%f",y);ln;cdim(x,y);break;
  case 3:ln;printf("Digite x: ");scanf("%f",x);ln;printf("Digite y: ");scanf("%f",y);ln;cmul(x,y);break;
  case 4:ln;printf("Digite x: ");scanf("%f",x);ln;printf("Digite y: ");scanf("%f",y);ln;craz(x,y);break;
  case 5:break;
  default:menu();break;
 }
}
void csom(float x, float y) { printf("%d",x+y); }
void cdim(float x, float y) { printf("%d",x-y); }
void cmul(float x, float y) { printf("%d",x*y); }
void craz(float x, float y) { printf("%d",x/y); }

Scripts recomendados

Tabela hash com classes e tratamento de colisões por encadeamento

Conceito (nota - aprovado - reprovado)

Classe para manipulação de números complexos

Pilha, algoritmos push, pop e imprimir explicados

Mostra valores da tabela ascii


  

Comentários
[1] Comentário enviado por h4shbang em 08/02/2008 - 16:01h

Se me permite, fiz algumas correções aqui para rodar o codigo:

#include <stdio.h>
#include <stdlib.h>
#define ln printf("\n");

void csom(float x, float y);
void cdim(float x, float y);
void cmul(float x, float y);
void craz(float x, float y);
void menu(void);

int main(void) {
menu();
return 0;
}
void menu(void) {
int opt;
float x,y;
system("clear");
ln;printf("Calculadora simples.");ln;
printf("Digite o numero da operacao: (1 soma, 2 subtracao, 3 multiplicacao, 4 divisao, 5 sair: ");
scanf("%d",&opt);
switch(opt) {
case 1:ln;printf("Digite x: ");scanf("%f",&x);ln;printf("Digite y: ");scanf("%f",&y);ln;csom(x,y);break;
case 2:ln;printf("Digite x: ");scanf("%f",&x);ln;printf("Digite y: ");scanf("%f",&y);ln;cdim(x,y);break;
case 3:ln;printf("Digite x: ");scanf("%f",&x);ln;printf("Digite y: ");scanf("%f",&y);ln;cmul(x,y);break;
case 4:ln;printf("Digite x: ");scanf("%f",&x);ln;printf("Digite y: ");scanf("%f",&y);ln;craz(x,y);break;
case 5:break;
default:menu();break;
}
}
void csom(float x, float y) { printf("%f",(x+y));menu(); }
void cdim(float x, float y) { printf("%f",(x-y));menu(); }
void cmul(float x, float y) { printf("%f",(x*y));menu(); }
void craz(float x, float y) { printf("%f",(x/y));menu(); }


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts