5Danke
ERLEDIGT
JA
JA
ANTWORTEN
11
11
ZUGRIFFE
300
300
EMPFEHLEN
-
27.08.11 19:20 #1
- Registriert seit
- Jul 2011
- Beiträge
- 65
Hallo,
Ich bin heute Angefangen mit C++ und habe ein Problem bzw. suche etwas.
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
#include "stdafx.h" #include <iostream> double Rechnen(int wahl, double zahl1, double zahl2); int main() { int wahl; double ergebnis, zahl1, zahl2; std::cout << "Wählen sie eine Rechenmothode aus: \n" << std::endl << "(1)Addieren\n" << "(2)Subdrahieren\n" << "(3)Multi\n" << "(4)Divi\n"; std::cin >> wahl; std::cout << "\n\n"; std::cout << "\n\n"; std::cout << "\Gebe Zahl 1 ein: "; std::cin >> zahl1; std::cout << "\Gebe Zahl 2 ein: "; std::cin >> zahl2; std::cout << "\n\n"; std::cout << "\n\n"; ergebnis = Rechnen(wahl, zahl1, zahl2); std::cout << "Das Ergebnis ist: " << ergebnis << std::endl; std::cin.ignore(); std::cin.get(); return 0; } double Rechnen(int wahl, double zahl1, double zahl2) { double ergebnis; if ( wahl == 1) { ergebnis = zahl1 + zahl2; } else if ( wahl == 2) { ergebnis = zahl1 - zahl2; } else if ( wahl == 3) { ergebnis = zahl1 * zahl2; } else if ( wahl == 4) { ergebnis = zahl1 / zahl2; } else { std::cout << "Falsche Eingabe!\n"; } return ergebnis; }
Möchte ich es so haben das ich eine Rechen Methode wähle die nicht 1-4 ist kommt falsche Eingabe und wenn ich enter drück schließst sich das Programm und fragt nicht noch nach Zahl1 und Zahl2.
Schreibt mir jemand den Code um****?
Oder sagt mir eine Möglichkeit****?
mfG Jonas
-
Nein, das ist ein Hilfe-Forum und kein "Wer kann mir was programmieren" Forum.Schreibt mir jemand den Code um****?
Das jederzeit:Oder sagt mir eine Möglichkeit****
Wie ich das verstanden hab möchtest du das dein Programm nicht nach Zahlen fragt wenn eine ungültige Rechenart gewählt wurde:
Dann musst du zwischen den Zeilen 14 und 15 überprüfen ob "wahl" zwischen 1 und 4 liegt, wenn nicht dann gleich beenden, sonst nach Zahlen fragen:
Code :1 2 3 4 5 6
wenn (zahl < 1 || zahl > 4) //Fehlermeldung sonst { //Zeile 15-32 }Geändert von Steiner_B (27.08.11 um 22:09 Uhr)
-
27.08.11 19:57 #3
- Registriert seit
- Jul 2011
- Beiträge
- 65
Das verstehe ich irgendwie nicht.
-
Was konkret verstehst du nicht?
-
27.08.11 20:09 #5
- Registriert seit
- Jul 2011
- Beiträge
- 65
zahl > 0 && zahl < 0
-
Hoppla, da war wohl die Hand schneller als der Kopf. Es muss natürlich zahl < 1 || zahl > 4 heißen. Ich habs oben ausgebessert.
Geändert von Steiner_B (27.08.11 um 22:08 Uhr)
-
27.08.11 20:25 #7
- Registriert seit
- Jul 2011
- Beiträge
- 65
Ok jetzt macht das auch sinn. Gibt es auch ne andere möglichkeit?
-
Was tut diese Variante denn nicht, das du unbedingt haben möchtest? Das ist auf jeden Fall die sauberste Lösung.
-
27.08.11 20:29 #9
- Registriert seit
- Jul 2011
- Beiträge
- 65
Ja in diesen Fall aber wenn ich mehrerer Zeilen hab und mehrere solcher Abbruch schleifen oder wie man so was nennen soll ist das ganz schnell unverständlich und unübersichtlich.
Geändert von Jonas Meyer (27.08.11 um 20:39 Uhr)
-
Naja, man kann stattdessen folgendes verwenden (statt dem von mir oben geposteten Code)
Code cpp:1 2 3 4 5
if (zahl < 1 || zahl > 4) { //Fehlermeldung return 1; }
Raten würde ich aber keinem dazu, da der Code für jemanden anderen dadurch schwer nachvollziehbar wird.Geändert von Steiner_B (27.08.11 um 22:08 Uhr)
-
Immer noch nicht richtig. Es muss z.B.
heißen.Code cpp:1 2 3
if (zahl < 1 || zahl > 4) { // Fehlermeldung }
Die Bedingung ist ebenso falsch, da sie immer erfüllt ist.
Gegen ein return innerhalb einer Funktion ist grundsätzlich nichts einzuwenden. Das ist allemal übersichtlicher als viele ineinander geschachtelte if-else-Blöcke.
Grüße,
Matthias„Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
“For every complex problem, there is an answer that is short, simple and wrong.”
“Pessimism is safe, but optimism is a lot faster!”
Aktuelles Coding Quiz: #17 - Wörter kreuz und quer
-
Oh mann, das kommt davon wenn man während des Programmierens Fragen beantwortet. Danke für die Hinweise, ich hoff ich habs jetzt überall ausgebessert.
Ähnliche Themen
-
Programm beenden
Von anmae im Forum C/C++Antworten: 4Letzter Beitrag: 21.04.06, 13:54 -
Programm beenden, Programm sichtbar starten
Von yui05 im Forum PHPAntworten: 0Letzter Beitrag: 25.04.05, 20:06 -
Programm beenden
Von Operator_Jon im Forum Visual Basic 6.0Antworten: 2Letzter Beitrag: 26.01.05, 00:24 -
Programm beenden
Von smith99 im Forum JavaAntworten: 2Letzter Beitrag: 13.12.04, 14:36 -
[C#]Programm beenden
Von bitmaster im Forum C/C++Antworten: 8Letzter Beitrag: 27.06.03, 09:51





Zitieren


Login






