SmithuX
(usa Arch Linux)
Enviado em 18/09/2008 - 01:40h
Cara, tu também pode utilizar o SWITCH para fazer a escolha da operação.
Na minha opinião o SWITCH fica bem mais elegante e de mais fácil manutenção nesse caso.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
float soma (float a, float b) {
return (a+b);
}
float subtrai (float a, float b) {
return (a-b);
}
float multiplica (float a, float b) {
return (a*b);
}
float divide (float a, float b) {
return (a/b);
}
int main() {
float valor1, valor2;
char operacao;
do {
printf("\nDigite o primeiro valor:");
scanf("%f",&valor1);
if (valor1 != 0)
{
printf("\nDigite o segundo valor:");
scanf("%f", &valor2);
printf("\nEscolha a operação [+,-,*,/]");
scanf("%s", &operacao);
switch (operacao)
{
case '+':
printf("\nResultado: %.2f", soma (valor1, valor2));
printf("\n\n");
break;
case '-':
printf("\nResultado: %.2f", subtrai (valor1, valor2));
printf("\n\n");
break;
case '*':
printf("\nResultado: %.2f", multiplica (valor1, valor2));
printf("\n\n");
break;
case '/':
printf("\nResultado; %.2f", divide (valor1, valor2));
printf("\n\n");
break;
default:
printf("\nOperacao inválida!");
printf("\n\n");
}
}
}
while (valor1>0);
return 0;
}
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------