Hey,
bin zurzeit dabei C++ zu lernen, heute hab ich mir zum üben ein Ratespiel gecodet . Das Spiel hat 4 Schwierigkeitsstufen und funktioniert soweit ganz gut. Jetzt such ich aber etwas um dem Spieler die möglichkeit zu geben ein neues Spiel zu starten, ohne jedes mal das programm neu zu öffnen.
cout << "Wollen Sie nochmal spielen? j fuer Ja oder n fuer Nein" << endl;
cin >> NeuesSpiel;
if (NeuesSpiel == 'j')
{
goto Start;
}
else
{
system("PAUSE");
}
allerdings wird das Programm jedes mal beendet auch wenn ich j eingeb. Habt ihr irgendwelche Tipps um das zu verwirklichen? PS: Ja ich weiß ... ich könnte das mit 1 für ja und 2 für nein oder so machen aber würd das gern mit Buchstaben hinbekommen :) das Laber für Start is gesetz.
Danke schon mal für dei hilfe MfG Ich
Ich mag do-while-schleifen nicht, die sind unübersichtlich, außerdem kann er ja gleich bei der Deklaration einen Wert festlegen bei dem die Schleife min. einmal durchlaufen wird. Man sollte Varialblen die abgefragt werden sowieso immer mit einem Wert vorbelgen, das vermeidet den ein oder anderen komischen Fehler.
Nun, es ist Geschmacksache, ob while oder do-while in einigen Fällen empfehlenswerte ist. Sicher kommt man ohne do-while genauso aus wie ohne while, wenn man es darauf anlegt und gar kein while mag. Und wie Du nachlesen kannst, habe ich tritzdem NeuesSpiel mit einer Initialisierung vorbelegt, damit kein undefinerter Zustand da ist, auch wenn er in diesem Fall korrekt wäre.
Aber ich finde, dass man ruhig auch weniger verwendete Alternativen aufzeigen kann und letztendlich entscheidet der Fragesteller, wie er mit welcher Lösung weiterprogrammiert.