Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- void main(void)
- {float operando1, operando2, totale;
- char operazione; //dichiaro le variabili per la calcolatrice.
- unsigned int errore=0;
- //è necessario prendere con lo scanf i caratteri che indichino le operazioni fondamentali.
- printf ("Primo operando: ");
- scanf ("%f", &operando1);
- printf ("Secondo operando: ");
- scanf ("%f", &operando2);
- printf ("Operazione (+,-,*,/): ");
- scanf (" %c", &operazione);
- //con uno switch dico alla calcolatrice cosa fare nel caso vengano richieste le diverse operazioni e anche nell'eventualità
- //che la vecchietta abbia premuto qualcosa di sbagliato
- switch (operazione)
- {case '+':
- totale = operando1+operando2;
- break;
- case '-':
- totale = operando1-operando2;
- break;
- case '*':
- totale = operando1*operando2;
- break;
- case '/':
- if (operando2 != 0)
- {totale=operando1/operando2;
- }
- else
- {
- errore=1;
- }
- break;
- //darò il valore 1 a "errore" quando la vecchietta vorrà dividere per zero e il valore due per le altre eventualità
- //non vorrei ripetere due volte lo switch ma per ora non trovo altra soluzione :(
- default: errore=2;
- }
- while(errore==2)
- {printf("\nInput sbagliato, per favore riprova.\n");
- scanf(" %c",&operazione);
- switch (operazione)
- {case '+':
- totale = operando1+operando2;
- errore=0;
- break;
- case '-':
- totale = operando1-operando2;
- errore=0;
- break;
- case '*':
- totale = operando1*operando2;
- errore=0;
- break;
- case '/': if (operando2 != 0)
- {totale=operando1/operando2;
- errore=0;
- }
- else
- {
- errore=1;
- }
- break;
- default: errore=2;
- }
- }
- if (errore==0)
- {printf ("Il risultato della tua operazione è: %f\n", totale);
- }
- else
- {printf ("Errore hai diviso per zero!\n");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement