Zitat Zitat von Terces Beitrag anzeigen
Die einzige Frage die ich dann noch hätte wäre wiegesagt warum mein zuletzt geposteter Code nicht funktioniert, und das Programm bei einem Buchstaben nicht ordnungsgemäß zurückspringt.


so sollte es laufen. Hintergrund:
probiere mal aus bei der ersten Zahl sowas wie "2B" einzugeben. Die Fehlermeldung wirst du für die zweite Eingabe bekommen. Denn afaik extrahiert >> "soviel es kann" heraus. Der Rest bleibt im Buffer. Bei dem vorherigen Code
Code:
while (true)
    {   
        cout <<"Bitte die zweite Zahl eingeben : ";
        if ( ! (cin >> zahl2))
        {
            cout << "Fehlerhafte Eingabe, Nur Ganze Zahlen eingeben!\n";
                       
            continue;
        }
hatte es nämlich das Problem, dass die fehlerhafte Eingabe nicht in eine Zahl umgewandelt werden konnte (CIN gab Error zurück) - und daher im Buffer verblieb. Und dann wurde der Versuch vom neuen unternommen - da im Buffer noch was verblieben war, wurde auch keine neue Benutzereingabe eingelesen.

Daher sollte man nach der Fehleingabe erstmal "flushen/skippen" um wieder Platz für eine neue zu machen. Außerdem alle Fehlerflags per cin.clear(); zurücksetzen.