• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Konsole

12Kukan

Mitglied
Hallo Zusammen,

Ich habe ein kleines Problem mit meinem Taschenrechner und zwar will ich, dass er öfters einsetzbar ist als nur einmal. Den wenn ich ihn benutzte schließt er sich hinterher wieder und ich kann keine weitere rechnung eingeben.
Hier ist mein Code:
Code:
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int rechenoption;
    int zahl1, zahl2;
    
    cout << "Taschenrechner" << endl;
    cout << "Bitte waehlen Sie eine Rechenoption aus und geben Sie die Zahl ein, die vor der Option steht: " << endl;
    cout << "1. Addition" << endl;
    cout << "2. Subtraktion" << endl;
    cout << "3. Division" << endl;
    cout << "4. Multiplikation" << endl;
    cin >> rechenoption;
    
    if (rechenoption == 1) {
    cout << "Sie haben sich fuer die Addition entschieden." << endl;
    cout << "Bitte geben Sie zwei Zahlen ein, die addiert werden sollen: " << endl;
    cout << "Erste Zahl: ";
    cin >> zahl1;
    cout << "Zweite Zahl: ";
    cin >> zahl2;
    cout << zahl1 << " + " << zahl2 << " = " << (zahl1 + zahl2) << endl;
    }
    
    if (rechenoption == 2) {
    cout << "Sie haben sich fuer die Subtraktion entschieden." << endl;
    cout << "Bitte geben Sie zwei Zahlen ein, die subtrahiert werden sollen: " << endl;
    cout << "Erste Zahl: ";
    cin >> zahl1;
    cout << "Zweite Zahl: ";
    cin >> zahl2;
    cout << zahl1 << " - " << zahl2 << " = " << (zahl1 - zahl2) << endl;
    }
    
    if (rechenoption == 3) {
    cout << "Sie haben sich fuer die Division entschieden." << endl;
    cout << "Bitte geben Sie zwei Zahlen ein, die dividiert werden sollen: " << endl;
    cout << "Erste Zahl: ";
    cin >> zahl1;
    cout << "Zweite Zahl: ";
    cin >> zahl2;
    cout << zahl1 << " / " << zahl2 << " = " << (zahl1 / zahl2) << endl;
    }
    
    if (rechenoption == 4) {
    cout << "Sie haben sich fuer die Multiplikation entschieden." << endl;
    cout << "Bitte geben Sie zwei Zahlen ein, die multipliziert werden sollen: " << endl;
    cout << "Erste Zahl: ";
    cin >> zahl1;
    cout << "Zweite Zahl: ";
    cin >> zahl2;
    cout << zahl1 << " * " << zahl2 << " = " << (zahl1 * zahl2) << endl;
    }
    
    cin.ignore();   
    cin.sync();
    cin.get();
    return 0;   
}
Beispielsweise mache ich eine Multiplikation...dann habe ich das Ergebnis und will aber noch eine machen gebe wieder die Menü nummer ein und bestätige mit Enter doch die Konsole schließt sich.
Das ist so ungefähr mein Problem...

Mit freundlichen Grüßen,
Kukan
 
Werbung:
Das solte relative einfach sein.
1. Initialisiere die Variable "rechenoption" direkt am Anfang des Programms mit 0.
2. Gib eine neue Auswahl aus "9. Rechner beenden"
3. Den Code von (incl.) "cin >> rechenoption;" bis (incl.) "cout << zahl1 << " * " << zahl2 << " = " << (zahl1 * zahl2) << endl; }" wird in eine while-Schleife eingefasst, deren Bedingung auf != 9 abgeprüft wird.
4. Compilieren
5. Rechnen bis zum Sankt Nimmerleinstag

Gruß thuemmy
 
Soll das ganze dann so aussehen ?:
Code:
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int rechenoption;
    rechenoption = 0;
    int zahl1, zahl2;
 
    
                          
    cout << "Taschenrechner" << endl;
    cout << "Bitte waehlen Sie eine Rechenoption aus und geben Sie die Zahl ein, die vor der Option steht: " << endl;
    cout << "1. Addition" << endl;
    cout << "2. Subtraktion" << endl;
    cout << "3. Division" << endl;
    cout << "4. Multiplikation" << endl;
    cout << "5. Taschenrechner beenden" << endl;
    cin >> rechenoption;
    
    while(rechenoption =! 5) {
    
    if (rechenoption == 1) {
    cout << "Sie haben sich fuer die Addition entschieden." << endl;
    cout << "Bitte geben Sie zwei Zahlen ein, die addiert werden sollen: " << endl;
    cout << "Erste Zahl: ";
    cin >> zahl1;
    cout << "Zweite Zahl: ";
    cin >> zahl2;
    cout << zahl1 << " + " << zahl2 << " = " << (zahl1 + zahl2) << endl;
    }
    
    if (rechenoption == 2) {
    cout << "Sie haben sich fuer die Subtraktion entschieden." << endl;
    cout << "Bitte geben Sie zwei Zahlen ein, die subtrahiert werden sollen: " << endl;
    cout << "Erste Zahl: ";
    cin >> zahl1;
    cout << "Zweite Zahl: ";
    cin >> zahl2;
    cout << zahl1 << " - " << zahl2 << " = " << (zahl1 - zahl2) << endl;
    }
    
    if (rechenoption == 3) {
    cout << "Sie haben sich fuer die Division entschieden." << endl;
    cout << "Bitte geben Sie zwei Zahlen ein, die dividiert werden sollen: " << endl;
    cout << "Erste Zahl: ";
    cin >> zahl1;
    cout << "Zweite Zahl: ";
    cin >> zahl2;
    cout << zahl1 << " / " << zahl2 << " = " << (zahl1 / zahl2) << endl;
    }
    
    if (rechenoption == 4) {
    cout << "Sie haben sich fuer die Multiplikation entschieden." << endl;
    cout << "Bitte geben Sie zwei Zahlen ein, die multipliziert werden sollen: " << endl;
    cout << "Erste Zahl: ";
    cin >> zahl1;
    cout << "Zweite Zahl: ";
    cin >> zahl2;
    cout << zahl1 << " * " << zahl2 << " = " << (zahl1 * zahl2) << endl;
    }
    
    if (rechenoption == 5) {
    cout << "Der Taschenrechner wird in 5 Sekunden beendet." << endl;
    return 0;
    }    
}    
    cin.ignore();   
    cin.sync();
    cin.get();
}

P.S.: Bei mir funktioniert das nicht sollte es anders umgesetzt werden?

Grüße,
Kukan

EDIT:
Ich habe das Problem anders gelöst und zwar so:
Code:
#include <cstdlib>
#include <iostream>
#include <cmath>

using namespace std;

int main(int argc, char *argv[])
{
    int rechenoption;
    rechenoption = 0;
    int zahl1, zahl2;
    string again;
    bool run = true;
    
 
    while(run == true){
                          
    cout << "Taschenrechner" << endl;
    cout << "Bitte waehlen Sie eine Rechenoption aus und geben Sie die Zahl ein, die vor der Option steht: " << endl;
    cout << "1. Addition" << endl;
    cout << "2. Subtraktion" << endl;
    cout << "3. Division" << endl;
    cout << "4. Multiplikation" << endl;
    cout << "5. Taschenrechner beenden" << endl;
    cin >> rechenoption;
    
    
    if (rechenoption == 1) {
    cout << "Sie haben sich fuer die Addition entschieden." << endl;
    cout << "Bitte geben Sie zwei Zahlen ein, die addiert werden sollen: " << endl;
    cout << "Erste Zahl: ";
    cin >> zahl1;
    cout << "Zweite Zahl: ";
    cin >> zahl2;
    cout << zahl1 << " + " << zahl2 << " = " << (zahl1 + zahl2) << endl;
    }
    
    if (rechenoption == 2) {
    cout << "Sie haben sich fuer die Subtraktion entschieden." << endl;
    cout << "Bitte geben Sie zwei Zahlen ein, die subtrahiert werden sollen: " << endl;
    cout << "Erste Zahl: ";
    cin >> zahl1;
    cout << "Zweite Zahl: ";
    cin >> zahl2;
    cout << zahl1 << " - " << zahl2 << " = " << (zahl1 - zahl2) << endl;
    }
    
    if (rechenoption == 3) {
    cout << "Sie haben sich fuer die Division entschieden." << endl;
    cout << "Bitte geben Sie zwei Zahlen ein, die dividiert werden sollen: " << endl;
    cout << "Erste Zahl: ";
    cin >> zahl1;
    cout << "Zweite Zahl: ";
    cin >> zahl2;
    cout << zahl1 << " / " << zahl2 << " = " << (zahl1 / zahl2) << endl;
    }
    
    if (rechenoption == 4) {
    cout << "Sie haben sich fuer die Multiplikation entschieden." << endl;
    cout << "Bitte geben Sie zwei Zahlen ein, die multipliziert werden sollen: " << endl;
    cout << "Erste Zahl: ";
    cin >> zahl1;
    cout << "Zweite Zahl: ";
    cin >> zahl2;
    cout << zahl1 << " * " << zahl2 << " = " << (zahl1 * zahl2) << endl;
    }
    
    if (rechenoption == 5) {
    cout << "Der Taschenrechner wird in 5 Sekunden beendet." << endl;
    return 0;
    }
    
    cout << "Den Taschenrechner erneut verwenden Ja oder Nein: " << endl;
    cin >> again;
    
    if(again == "Ja") {
    run = true;
    }
    
    else {
    run = false;
    }
}    
    return 0;       
}
 
Zuletzt bearbeitet:
Werbung:
Zurück
Oben