Frage von Joneyf, 79

do while java?

Hey Leute, Rechner neueRechnung = new Rechner();

int Er;
do
{
    System.out.println("Rechnung:");
    System.out.println(neueRechnung.Rechenstellung());
    Er = Eingabe.nextInt();
    if (Er != neueRechnung.Ergebnis())
    {
    System.out.println("Falsch");
    }
} while (Er != neueRechnung.Ergebnis());

if (Er == neueRechnung.Ergebnis())
    ;
{
    System.out.println("Richtig!");
}

}

}

Schleifen wiederholen Rechnung solange, wie die Lösung zutrifft. Wenn man die Rechnung sofort richtig hat kommt ein Richtig! und das Programm endet. Umgekehrt kommt halt Falsch. Was ich aber will: wenn man ein Falsch bekommt und dann ein Richtig, soll nochmal eine Aufgabe kommen und wenn diese dann richtig ist wird das programm beendet. Komme aber nicht drauf wie

Antwort
von HolyBird, 25

Führe einfach einen Counter ein...

So wie ich das verstanden habe, sollst du für jede falsche Antwort eine weitere richtige Antwort eingeben.

setze den Counter auf eins und erhöhe den bei falschen Antworten und reduziere den bei richtigen.

counter = 1;
do {
/* Irgendwas */
falsch:
++counter
richtig:
--counter
} while(counter > 0);


Kommentar von Joneyf ,

Danke man!

Antwort
von Tschoo, 39

Aber das ist wirklich kein Java-Script.

Es gibt viele Lösungen, eine wäre:

Du musst noch eine Variable einfüheren:

Boolean ErAltRechnung = true;

Um die while-Schleife eine zweite mit

while (!ErAltRechnung)

und in die if-Bedingung mit "Falsch"

ErAltrechnung = false;

und irgendwann eben true setzten, damit du aus der äusseren Schleife rauskommst.

Keine passende Antwort gefunden?

Fragen Sie die Community