Faca um algoritmo em linguagem C que recebe como entrada dois valores reais (x e y) e um simbolo de operacao matematica via teclado do usuario (+,-,/ ou *) .O programa devera retornar o resultado da operacao recebida sobre esses dois numeros .Deve ser permitido que o usuario faça calculos com valores negativos e positivos .Tambem ,tome cuidado com a possibilidade de uma divisao por 0, seu programa deve tratar esse problema de alguma maneira .
Soluções para a tarefa
O código do algoritmo pode ser:
int main()
{
int x, y ; //inicializa as variáveis
char op;
printf("Digite o primeiro numero:");
scanf("%d", &x);
printf("Digite a operação que deseja fazer:");
scanf("%s", op);
printf("Digite o segundo numero:");
scanf("%d", &y);
if (strcmp (op, "/") == 1 && y==0) //Verifica se é divisão por zero
printf ("\n\n Não é possível dividir um número por zero");
}
else {
// realiza as operações
if (strcmp (op, "+") == 1 )
printf(“%d”, x+y);
}
if (strcmp (op, "-") == 1 )
printf(“%d”, x-y);
}
if (strcmp (op, "*") == 1 )
printf(“%d”, x*y);
}
if (strcmp (op, "/") == 1 )
printf(“%d”, x/y);
}
}
QUESTÃO:
A lógica acima também está correta.
#include <stdio.h>
int main(){
char op;
float X,Y,res;
printf("VALOR X: ");
scanf("%f", &X);
fflush(stdin);
printf("\nVALOR Y: ");
scanf("%f", &Y);
fflush(stdin);
printf("\nSimbolo de op: ");
scanf("%c", &op);
fflush(stdin);
switch(op){
case '+':
res = (X) + (Y);
break;
case '-':
res = (X) - (Y);
break;
case '*':
res = (X) * (Y);
break;
case '/':
res = (X) / (Y);
break;
break;
}
printf("--------------------------------");
if(Y != 0){
printf("\n\n\no resultado da sua op eh: %.2f", res);
}
else{
printf("\n\n\nNao eh possivel fazer a op!!!");
}
return 0;
}