Berechnungen beliebig oft durchführen?!?!



  • Hallo,

    ich habe ein Programm geschrieben und will dass der Benutzer die geforderten Berechnungen beliebig oft durchführen kann, ohne das Programm jedes mal neu zu starten.

    Bitte um Hilfe.

    danke



  • Versuch es einfach mit ner Schleife.

    Wenn es nur ein kleines Programm ist, kannst du auch den Befehl goto nehmen.

    Poste am besten mal den Quelltext



  • na ja z.b ich will 2 Zahlen addieren:

    .
    .
    int a,b,c;
    cin >>a>>b;
    c=a+b;
    cout << c << endl;
    .
    .
    

    das Problem ist dass diese Programm berechnet a+b, c wird ausgegeben und das Programm wird beendet.



  • Wie mein Vorredner schon sagte:

    Hallo123 schrieb:

    Versuch es einfach mit ner Schleife.

    Also einer do-while- oder einer while-Schleife.



  • ich habe z.b auch mit cin.ignore(80,'!'){in andere Beispiel} versucht aber nachdem die erste Berechnung durchgeführt wird dann wird die 2 nicht berechnet und ich muss ! schreiben um das Programm zu beenden.



  • Du solltest dich mal mit Schleifen beschäftigen, steht in jedem C++ Anfängerbuch drin.

    while(true)
    {
     int a,b,c;
     cin >>a>>b;
     c=a+b;
     cout << c << endl;
    };
    


  • ich habe es schon mit while(true) versucht aber dann muss der Benutzer nut mit STRG+C das Program beenden. Ich werde while(true) mit cin.ignore verwenden hoffentlich klappt es.

    Danke



  • So sollte es jetzt nach deinen Wünschen funktionieren (wenn ich dich richtig verstanden habe) 😉
    Der Benutzer erhält hier Möglichkeit beliebig viele Eingaben zu Tätigen und kann das Programm auch beenden

    int main()
    {
    
         char taste = 'j';
         while(taste == 'j')
         {
              int a,b,c;
              cout << "\n1.Zahl eingeben: ";
              cin >> a;
              cout << "\n2.Zahl eingeben: ";
              cin >> b;
              c=a+b;
              cout << "\nErgebnis: " << c;
              cin.sync();
              cin.clear() ;
              do
              {
              cout << "\nNeue Eingabe? (j/n) ";
              cin >> taste;
              }
              while(taste != 'j' && taste != 'J' && taste != 'n' && taste != 'N');
         }
    
         return 0;
    }
    


  • Hallo123 😃 du hast mich richtig verstanden. Danke viel mals, ein Bier hast du verdient



  • Hallo123 schrieb:

    Versuch es einfach mit ner Schleife.

    Wenn es nur ein kleines Programm ist, kannst du auch den Befehl goto nehmen.

    Poste am besten mal den Quelltext

    das mit dem goto war doch n witz, oder?



  • ne wieso?

    Ich will jetzt hier keine Grundsatzdiskusion anfangen, aber was spricht dagegen, bei einem kleinen!!! Programm den goto-Befehl zu benutzen???



  • Ein Vorgehensweise die in einem grossen Programm nicht gut ist, ist es auch
    nicht bei einem kleinen Programm. Insbesondere dann, wenn es sich um einen
    Anfänger handelt der diesen Hack dann vielleicht für eine gute Lösung hält.

    mfg JJ



  • Wieso postet du dann, wenn du KEINE Grundsatzdiskusion beginnen willst?
    Nur so, man soll sich erst gar nicht angewöhnen GoTo zu benutzen. Klar sprichts nichts dagegen aber es gibt andere bessere Möglichkeiten, eben die mit while z.b. die du auch benutzt hast. Also erst gar nicht anfangen mit GOTO und gut ist, dann muss man sich naher auch nichts abgewöhnen!



  • stimmt



  • iHateGoTo schrieb:

    Wieso postet du dann, wenn du KEINE Grundsatzdiskusion beginnen willst?
    Nur so, man soll sich erst gar nicht angewöhnen GoTo zu benutzen. Klar sprichts nichts dagegen aber es gibt andere bessere Möglichkeiten, eben die mit while z.b. die du auch benutzt hast. Also erst gar nicht anfangen mit GOTO und gut ist, dann muss man sich naher auch nichts abgewöhnen!

    Wieso nicht GoTo? Ich habe viele c++ programme mit "goto" gesehen.

    danke



  • Manchmal hat man eben keine andere Wahl als goto.



  • Strogij schrieb:

    Manchmal hat man eben keine andere Wahl als goto.

    ein goto kann man IMMER ersetzen.

    //edit gabs dazu nichtmal sone art beweis? hab meine alte linksammlung nichtmehr, dachte da wär sowas dabei gewesen...



  • otze schrieb:

    Strogij schrieb:

    Manchmal hat man eben keine andere Wahl als goto.

    ein goto kann man IMMER ersetzen.

    Die Frage ist nicht ob man kann sondern ob man sollte. Dann wird's mit dem "immer" auch gleich wieder problematisch. Egal wie G R O ß du es nun schreibst.



  • Man kann Funktionen auch IMMER durch Copy&Paste ersetzen 😉 Nur obs sinnvoll ist, ist die Frage...



  • und warum sollte man goto vermeiden? niemand hat das erklaert



  • Weil der Code dadurch unübersichtlich werden kann, da eine klare Struktur nicht so sehr ersichtlich ist (d.h. was wird wiederholt, wo springt der jetzt schon wieder hin, usw 😉 ). Jedenfalls sind das die Gründe warum ich das nicht nutzen würde.
    Aber natürlich kann ein einzelnes goto niemanden umbringen...wenn man der einfachheit halber aus verschachtelten Schleifen irgendwo springen muss ist ein goto IMHO nicht verkehrt, da das ja nocht ersichtlich ist. goto vehement abzulehnen ist auch nicht der Weisheit letzter Schluss. Aber ich finde es halt unschön.


Anmelden zum Antworten