Hilfe bei einer verschachtelten While-Schleife
-
Ich bin gerade angefangen mit dem C++ lernen und wollte mir mal ein auf Textbasiertes Spiel schreiben, bei dem man immer verschiedene Möglichkeiten hat, die man ausführen kann. Da es aber langweilig ist, immer nur anzugeben was man machen will, dachte ich mir ich mache eine Aufgabe bei der man einen "Gegner", der 20 Leben hat (habe ich bereits vor der main Funktion festgelegt), besiegen muss. Nach Ablauf von 5 Sekunden, verliert man eins von drei Leben, wenn man den Gegner noch nicht besiegt hat, das heißt der Gegner schlägt zurück. Mein Problem ist, das wenn ich es in der zweiten Schleife (befindet sich in der ersten Schleife) geschafft habe, die Leben des Gegners auf 0 zu setzen, geht das Leben weiter ins Minus
. Daher wollte ich in der zweiten Schleife, nach jedem abziehen des Lebens des Gegners, eine IF-Bedinung einfügen, falls das TrollLeben kleiner ist als eins springt er sofort wieder zum Anfang der ersten Schleife, in der die Bedingung ist, das das GegnerLeben noch über 0 liegt. Daher würde diese übersprungen werden und es wird angezeigt man hätte gewonnen. Nun ist meine Frage, wie kann ich vom Ende der zweiten Schleife zum Anfang der ersten Schleife springen ?Sollte mein Beitrag in der falschen Ecke liegen bitte verschieben.
Schonmal vielen dank

-
Zum Feinsteuern von Schleifen gibt es noch die Schlüsselwörter
breakundcontinue.
-
SeppJ schrieb:
Zum Feinsteuern von Schleifen gibt es noch die Schlüsselwörter
breakundcontinue.Nun bin ich einen kleinen Schritt weiter, nun zeigt er dank break zwar nur noch 0 an, das aber immer wieder. Wie kann ich denn continue verwenden ?
-
Wie kann ich denn continue verwenden ?
continueist ein Sprungbefehl, der den Programmablauf beim Ende der Schleife fortsetzt:while(...) { if( foo ) { bar; continue; } .... .... // continue springt hier hin. Ab hier dann normaler Schleifendurchlauf. }Ließe sich natürlich auch einfach ergooglen.