Problema calcolatrice da me programmata

di il
5 risposte

Problema calcolatrice da me programmata

Premetto che questo è il mio primo topic quindi, vi chiedevo come poter fare tornare "alla homepage" (cioè alla scelta delle operazioni) senza dover per forza ri-aprire il programma...visto che ora sono obbligato a chiudere e ri-aprire.... p.s. il linguaggio è il c++


ecco qua' il codice

//calcolatrice
#include <iostream>
using namespace std;


int main(){
char risposta, lettera;
int numero1, numero2, numfin;

numero1=0;
numero2=0;
numfin=0;

cout << "Inserisci A(+)B(-)C(/)D(*)\n";
cin >> lettera;

switch (lettera) {
case 'A':{
do{
cout << "inserisci primo numero\n";
cin >> numero1;
cout <<"inserisci secondo numero\n";
cin >> numero2;
numfin = numero1 + numero2;
cout <<"la risposta e' "<<numfin<<"\n";
cout <<"vuoi continuare a sommare <s/n>\n";
cin >> risposta;
} while (risposta =='s');
break;
}
}
numfin=0;
numero1=0;
numero2=0;
switch (lettera) {
case 'B': {
do {
cout << "inserisci il primo numero\n";
cin >> numero1;
cout << "inserisci il secondo numero\n";
cin >> numero2;
numfin = numero1 - numero2;
cout <<"la risposta e' "<<numfin<<"\n";
cout <<"vuoi continuare a sottrarre <s/n>\n";
cin >> risposta;
} while (risposta =='s');
break;
}
}
numero1=0;
numfin=0;
numero2=0;

switch (lettera){
case 'C' :{
do{
cout << "inserisci il primo numero\n";
cin >> numero1;
cout << "inserisci il secondo numero\n";
cin >> numero2;
numfin = numero1 / numero2;
cout <<"la risposta e' "<<numfin<<"\n";
cout <<"vuoi continuare a dividere <s/n>\n";
cin >> risposta;
} while (risposta =='s');
break;
}
}
numero1=0;
numfin=0;
numero2=0;

switch (lettera) {
case 'D' :{
do {
cout << "inserisci il primo numero\n";
cin >> numero1;
cout << "inserisci il secondo numero\n";
cin >> numero2;
numfin = numero1 * numero2;
cout <<"la risposta e' "<<numfin<<"\n";
cout <<"vuoi continuare a moltiplicare?<s/n>\n";
cin >> risposta;
} while (risposta =='s');
break;
}
}
system ("pause");
}

5 Risposte

  • Re: Problema calcolatrice da me programmata

    Inserisci la parte di codice opportuna in un ciclo do...while ... praticamente come hai fatto per le singole operazioni.
  • Re: Problema calcolatrice da me programmata

    Provato ma non funziona...non mi fa uscire...se vuoi ti faccio uno screen
  • Re: Problema calcolatrice da me programmata

    Se non funziona, mostra il codice sul forum (copialo e incollalo) e usa i tag CODE.
  • Re: Problema calcolatrice da me programmata

    Puoi usare, come dice oregon, un semplice ciclo.
    Utilizzi già una variabile lettera per ricevere input dall'utente. Basta eseguire le istruzioni in ciclo finché lettera sia diversa da 'Q' o il carattere che ti pare.
    
    std::cout << "Inserisci A(+)B(-)C(/)D(*) o Q per uscire" << std::endl;
    std::cin >> lettera;
    while(lettera != 'Q'){
        // Esegui tutti i tuoi comandi
        std::cout << "Inserisci A(+)B(-)C(/)D(*) o Q per uscire" << std::endl;
        std::cin >> lettera;
    }
    
    Per favore, per una maggiore chiarezza, utilizza sempre i tag code e la corretta indentazione.
    Spero di essere stato d'aiuto
  • Re: Problema calcolatrice da me programmata

    tuixte ha scritto:


    
    std::cout << "Inserisci A(+)B(-)C(/)D(*) o Q per uscire" << std::endl;
    std::cin >> lettera;
    while(lettera != 'Q'){
        // Esegui tutti i tuoi comandi
        std::cout << "Inserisci A(+)B(-)C(/)D(*) o Q per uscire" << std::endl;
        std::cin >> lettera;
    }
    
    Per evitare di ripetere il codice e visto che comunque almeno una iterazione del ciclo devi comunque farla puoi anche usare un ciclo do..while:
    
    do {
        std::cout << "Inserisci A(+)B(-)C(/)D(*) o Q per uscire" << std::endl;
        std::cin >> lettera;
    } while (lettera != 'Q');
    
    EDIT: whoops ho appena visto che anche oregon aveva suggerito la stessa cosa
Devi accedere o registrarti per scrivere nel forum
5 risposte