Problem bei Anfänger Besipielprgramm



  • Hallo,
    Ich habe gerade mit C++ angefangen und bin im moment dabei mich mit schleifen und Vectoren auseinanderzusetzten. In meinem Buch gab es jetzt die Aufgabe:
    "Schreiben Sie ein Programm, dass aus einer while-Schleife besthet, die bei jedem Schleifendurchlauf zwei int Werte einließt und diese dann ausgibt. Verlassen sie das Programm wenn zum Beenden ein 'I' eingegeben wurde."

    Jetzt habe ich einen vector erstellt in den in jeder schleife eingelesen wird.
    [code="cpp"]
    #include "std_lib_facilities.h"

    int main() {
    vector <int>zahl;
    int zahlen;
    while(cin>>zahlen)
    zahl.push_back(zahlen);

    for(int i=0;i<2;++i)
    cout<<zahl[i]<<endl;

    }

    Jetzt werden zwar 2Werte ausgegeben jedoch ließt er unendlch viele Werte ein. Und beendet wird das Programm auch nicht. Könntet ihr mir dabei Helfen?
    Danke schonmal im Vorraus! 🙂



  • Dann lies eine Zeichenkette ein. Wenn es ein I ist, beende das Programm, ansonsten konvertierst du sie in einen int (google!).



  • danke für deine Antwort aber das hauptproblem liegt ja drain dass in jedem durchlauf unedlich viele Werte eingelsesn werden und nicht nur 2.



  • Dann wirst du wohl die Abbruchbedingung ändern müssen. Wobei für 2 Werte lohnt eine Schleife fast gar nicht.



  • RohanSa schrieb:

    "Schreiben Sie ein Programm, dass aus einer while-Schleife besthet, die bei jedem Schleifendurchlauf zwei int Werte einließt und diese dann ausgibt. Verlassen sie das Programm wenn zum Beenden ein 'I' eingegeben wurde."

    int main() {
      int i,j;
      while(cin>>i>>j)
        cout<<'('<<i<<'/'<<j<<")\n";
    }
    


  • Super hat mein Problem gelöst ich habe es mr wohl einfach zu schweierig gemacht



  • RohanSa schrieb:

    Super hat mein Problem gelöst ich habe es mr wohl einfach zu schweierig gemacht

    Ja. Denke ich auch. Deswegen auch einfach kommentarlos hingeklatscht... 😉

    Du kannst übrigens Dein erstes Posting oben noch editieren und das fehlende schließende Tag einfügen: [/code]



  • RohanSa schrieb:

    Super hat mein Problem gelöst ich habe es mr wohl einfach zu schweierig gemacht

    Wobei deine Fragestellung nicht vorschreibt was passieren soll wenn man etwas anderes als 'I' oder eine Zahl eingibt. Das Programm Furble Wurble bricht immer ab wenn man etwas eingibt, dass keine Zahl ist.


Log in to reply