[c] calcolatrice banale
Procedendo nello studio del linguaggio C, sto provando a scrivere un piccolo programma(a scopo didattico) che realizza una banalissima calcolatrice...
eseguendo il codice pero' ho come output numeri altissimi...se ad esempio inserisco $x=2$ e $y=3$ e seleziono l'operazione di somma, ho come output un numero esagerato($134514092$)
non capisco...mi sembra tutto formalmente corretto...
#include <stdio.h>
int main()
{
int z;
printf("Il sorgente realizza una banale calcolatrice con la quale,posso calcolare somma, prodotto, differenza e divisione\n\n\n");
int x;
printf("Inserire primo valore (x) :\n");
scanf("%d", &x);
int y;
printf("Inserire secondo valore (y) :\n");
scanf("%d", &x);
int op;
printf("Inserire il simbolo corrispondente all'operazione aritmetica da effettuare(1=+,2=-,3=*,4=/):\n");
scanf("%d", &op);
switch (op) {
case 1:
z=x+y;
printf("Il risultato dell'addizione vale: %d\n\n",z);
break;
case 2:
z=x-y;
printf("Il risultato della sottrazione vale: %d\n\n",z);
break;
case 3:
z=x*y;
printf("Il risultato della moltiplicazione vale: %d\n\n",z);
break;
case 4:
z=x/y;
printf("Il risultato della divisione vale: %d\n\n",z);
break;
}
}eseguendo il codice pero' ho come output numeri altissimi...se ad esempio inserisco $x=2$ e $y=3$ e seleziono l'operazione di somma, ho come output un numero esagerato($134514092$)
non capisco...mi sembra tutto formalmente corretto...
Risposte
Nella seconda chiamata a scanf leggi ancora il valore di x, e non di y.
Ciao
dipende dal fatto che memorizzi il valore di $y$ nella variabile $x$
se guardi bene vedrai che quando leggi $y$ poi fai
dovresti fare
dipende dal fatto che memorizzi il valore di $y$ nella variabile $x$
se guardi bene vedrai che quando leggi $y$ poi fai
scanf("%d", &x);
dovresti fare
scanf("%d", &y);
che svista! grazie ad entrambi!!