Ciao, è la prima volta che scrivo su questo forum, scusate per eventuali errori.
Ho scritto questo programma che funziona da calcolatrice ma non capisco dove sbaglio; non mi da errori ma appena eseguo il programma va in loop.
#include <iostream>
using namespace std;
float val_1, val_2, risultato; /* Il float serve ad indicare una variabile reale, quindi anche numero con virgola*/
char operatore='a'; /* Il char serve per i valori del codice ASCII*/
int main ()
{
cout<< "\nDimmi il primo valore :";
cin>> val_1;
do
{
cout<< "\nDimmi l'operatore :";
cin>> operatore;
if (operatore!='+' and operatore!='-' and operatore!='*' and operatore!='/')
{
cout<< "Stai sbagliando!! Quello inserito non si tratta di un operatore!!!";
}
}
while (operatore!='+' and operatore!='-' and operatore!='*' and operatore!='/');
cout<< "Dimmi il secondo valore :";
cin>> val_2;
switch (operatore)
{
case '+': risultato=val_1+val_2;
break;
case '-': risultato=val_1-val_2;
break;
case '/': risultato=val_1/val_2;
break;
case '*': risultato=val_1*val_2;
break;
}
cout<< "\n---------------------";
cout<< "\n "<<risultato;
Ho cominciato a studiare programmazione da poco e non sono molto esperta, non riesco a capire dov'è l'errore.