001
23.08.2014, 21:49 Uhr
FloSoft
Medialer Over-Flow (Administrator)
|
Hi,
also ich sehe ein paar Probleme (von dem system("PAUSE") mal abgesehen ...):
C++: |
if (z1 < 999999)(z1 > -999999);
|
ergibt keinen sinn - ich vermute du meinst ein "UND"
C++: |
if ( (z1 < 999999) && (z1 > -999999) )
|
(ohne Strichpunkt am Ende, da du ja den Block { ... } ausführen willst wenn die Bedingung zutrifft!)
genauso bei
C++: |
if (z2 < 999999)(z2 > -999999);
|
muss es
C++: |
if ( (z2 < 999999) && (z2 > -999999) )
|
lauten.
So zu deiner Frage: Naja - du musst deine if's passend zusammensetzen, so das deine Fehlermeldung nur bei einem Fehler auftritt.
in deinem Fall evtl einfachheitshalber so:
C++: |
// ...
bool error = true; // das zeigt uns dann später an ob ein Fehler vorlag
if ( (z1 < 999999) && (z1 > -999999) ) { cout << "+" << endl; cin >> z2;
// das hier hier rein, bei Fehler in z1 musst du z2 nicht einlesen if( (z2 < 999999) && (z2 > -999999) ) { cout << "Das Ergebnis lautet:" << endl; cout << z1+z2 << endl; system ("PAUSE");
error = false; // keinen Fehler mehr ausgeben } }
if(error) { cout << "FEHLER! Falsche Eingabe" << endl; system ("PAUSE"); }
// ....
|
Wichtig: Achte auf die Einrückung, das machts einfacher. Wenn du eine halbwegs aktuelle IDE benutzt (Visual Studio, Eclipse, was auch immer...) gibt es eine Codeformatierungsfunktion, solltest du ab und zu benutzen ;-) -- class God : public ChuckNorris { }; Dieser Post wurde am 23.08.2014 um 21:50 Uhr von FloSoft editiert. |