Visual C++ Taschenrechner Problem
-
Ich habe einen kleinen C++ Taschenrechner programmiert, der eigentlich funktioniert, aber folgendes Problem aufweist:
Wenn ich 2 + 2 in der Konsole eingebe, kommt das Ergebnis 2 + 2 = 4 ganz normal raus, gebe ich aber 2 + 2 = in die Konsole ein erfolgt eine Endlosschleife, in dieser Endlosschleife wird die Lösung zwar richtig angezeigt, sie wiederholt sich jedoch unendlich.
Wo könnte der Fehler jetzt liegen?
Hier der Code:
#include <iostream> using namespace std; void wait () { cin.clear(); cin.ignore(cin.rdbuf()->in_avail()); cin.get(); } int main () { long double zahl1, zahl2, ergebnis; char rechenzeichen; do { cout << "Geben Sie eine Rechenoperation ein..." << endl; cin >> zahl1 >> rechenzeichen >> zahl2; switch (rechenzeichen){ case '+': ergebnis = zahl1+zahl2; break; case '-': ergebnis = zahl1-zahl2; break; case '*': ergebnis = zahl1*zahl2; break; case '/': ergebnis = zahl1/zahl2; break; case ':': ergebnis = zahl1/zahl2; break; default: cout << "Unbekannter Operator \n"; return 1; } cout << zahl1 << ' ' << rechenzeichen << ' ' << zahl2 << " = " << ergebnis << '\n'; } while (rechenzeichen != 0); wait (); return 0; }Danke schon mal im voraus.
-
...
-
Dieser Thread wurde von Moderator/in Martin Richter aus dem Forum MFC (Visual C++) in das Forum C++ (auch C++0x und C++11) verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.