taschenrechnerproblem



  • Morgen hab ne aufgabe bekommen und soll einen Taschenrechner programmieren,soweit macht er alles außer : 1. bei divisio zb 3/0 bricht es ab ..da hätte ich gern das dann kommt division durch null nicht möglich und das 2 te ist das er auf 2 stellen nach dem Komma runden soll
    Über Hilfe würde ich mich freuen
    Hier mein Quelltext

    #include <iostream>
    using namespace std;

    // Hauptprogramm
    int main ()
    {
    char Wahl;

    // Variablen fuer die Operanden
    short zahl1, zahl2;
    // Variable fuer den Operator
    int zeichen;
    do
    {
    // Einlesen der Formel
    cout << "Suchen Sie sich die Operation aus:\n";
    cout << "Verwendetwerden darf 1. (+) Addition, 2. (-) Subtraktion\n";
    cout << "3. (*) Multiplikation und 4. (/) Division" << endl;
    cout << "Welche Operation soll ausgeführt werden: ";
    cin >> zeichen;
    cout << "Bitte geben Sie die erste Zahl ein: ";
    cin >> zahl1;
    cout<< " bitte geben Sie die zweite Zahl ein: ";
    cin >> zahl2;

    // Ergebnissausgabe vorbereiten
    cout << "Ergebnis: ";
    // Nun den Operator auswerten
    switch (zeichen)
    {
    case 1:
    cout << zahl1+zahl2;
    break;
    case 2:
    cout << zahl1-zahl2;
    break;
    case 3:
    cout << zahl1*zahl2;
    break;
    case 4:
    cout << zahl1/zahl2;
    if (zahl2 ==0)
    cout<<"Defision durch 0 nicht möglich";

    break;
    default:
    cout << "Nur die Operatoren +, -, * und / sind zugelassen!";
    }
    // Zeilenvorschub ausgeben
    cout << endl;
    cout<<"\n\n M\224chten Sie eine weitere Aufgabe berechnen? <j/n>? : ";
    cin>>Wahl;

    }
    while(Wahl=='j' || Wahl=='J');
    system ("pause");

    }



  • Vielleicht solltest du die Prüfung auf Null machen, bevor du die Division durchführst.



  • hätte ich nen plan würd ich nicht schreiben
    weiß das da ne if funktion rin muss aber weiß nicht genau wie



  • Falsches Forum: C++ wäre korrekt.
    Dein Beitrag wird bestimmt bald verschoben.
    Simon



  • Aber mein Ausbilder hat gemeint das wir bloß C programmieren deswegen bin ich hier



  • Das Forum hier ist auch nicht C.
    Es ist C#. Dein Ausbildner muss wirklich von gar keine Ahnung haben.
    Tragisch...

    Simon



  • ich denk schon das der nen plan hat ,der hat jetzt nicht gesagt ich soll hier hin schreiben ,das war meine idee



  • Lydia schrieb:

    weiß das da ne if funktion rin muss aber weiß nicht genau wie

    Die if-Anweisung ist schon drin, nur nicht an der richtigen Stelle.

    lydia schrieb:

    ich denk schon das der nen plan hat ,der hat jetzt nicht gesagt ich soll hier hin schreiben ,das war meine idee

    Aber "der" hat wohl gesagt, dass das C sein soll. Das ist aber C++.



  • Naja ok .. habs jetzt ins c++ geschrieben vielleicht hilft mir da wer weiter, dank euch



  • 1. C# und C und C++ sind nicht das gleiche.
    2. Dein Sourcecode ist C++ und nicht C.
    3. eine "If-Funktion" gibt es nicht.
    4. Das nächste mal Code-Tags benutzen.
    5.

    //...
    case 4: 
    if(zahl2 == 0)
        cout << "Neee, geht doch nich!" << endl;
    else
        cout << zahl1/zahl2;
    //...
    

    6. So schwer kann das doch nicht gewesen sein?!


Anmelden zum Antworten