[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!!