Ho completato la calcolatrice.
È corretto il codice, secondo voi?
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
void somma(int x, int y);
void differenza(int x, int y);
void prodotto(int x, int y);
void divisione_intera(int x, int y);
void resto(int x, int y);
void potenza(int x, int y);
char z[1];
int main() {
int x;
int y;
int a;
printf("Inserisci i due numeri\n");
scanf("%d%d", &x, &y);
printf("Cosa vuoi calcolare? Premi:\n");
printf("+ per la somma prefissa +(%d, %d)\n", x, y);
printf("- per la differenza in forma prefissa -(%d, %d)\n", x, y);
printf("* per il prodotto in forma prefissa *(%d, %d)\n", x, y);
printf("/ per la divisione intera in forma prefissa /(%d, %d)\n", x, y);
printf("~ per il resto della divisione intera in forma prefissa -(%d, %d)\n", x, y);
printf("^ per la potenza in forma prefissa ^(%d, %d)\n", x, y);
scanf("%s", z);
switch(z[0]){
case '+': somma(x, y);
break;
case '-': differenza(x, y);
break;
case '*': prodotto(x, y);
break;
case '/': divisione_intera(x, y);
break;
case '~': resto(x, y);
break;
case '^': potenza(x, y);
break;
default: printf("Errore di simbolo\n");
}
system("pause");
return 0;
}
void somma(int x, int y){
int a;
a = x+y;
printf("Il valore ottenuto: %d\n", a);
}
void differenza(int x, int y){
int a;
a=x-y;
printf("Il valore ottenuto: %d\n", a);
}
void prodotto(int x, int y){
double a;
a=x*y;
printf("Il valore ottenuto: %d\n", a);
}
void divisione_intera(int x, int y){
int a;
if (y!=0){
a = x/y;
printf("Il valore ottenuto: %d\n", a);}
else {
printf("Divisione impossibile da svolgere\n");
}
}
void resto(int x, int y){
int a;
a=x%y;
printf("Il valore ottenuto: %d\n", a);
}
void potenza(int x, int y){
double a;
a=pow(x,y);
printf("Il valore ottenuto: %d\n", a);
}