Eine gute Antwort wäre:

  1. Die Anfangswerte müssen richtig festgelegt sein.
  2. Die Bedingung in der while-Schleife muss richtig sein.
  3. Die Änderung der Variable(n) muss richtig vorgenommen werden.

Um zwei hochzählen

Wenn Sie einen dieser drei Teile ändern, wird die Schleife etwas anderes tun. Hier ist ein Abschnitt eines Java Programms, das um zwei hochzählt:

int zaehler = 0;            // zaehler wird initialisiert
while ( zaehler <= 6 )      // zaehler wird überprüft
{
  System.out.println( "Zaehler ist:" + zaehler );
  zaehler = zaehler + 2;      // zaehler wird um 2 erhöht
}
System.out.println( "Fertig mit dem Hochzaehlen um zwei." );

Hier ist was das Programm ausgibt:

Zaehler ist: 0
Zaehler ist: 2
Zaehler ist: 4
Zaehler ist: 6
Fertig mit dem Hochzaehlen um zwei.

Hier ist mit allen ermüdenden Details was passiert, Schritt-für-Schritt:

  1. zaehler wird mit 0 initialisiert.

  2. Die Bedingung, zaehler <= 6 wird ausgewertet und ergibt WAHR.
  3. Der Schleifenkörper wird ausgeführt, gibt "Zaehler ist: 0" aus und addiert 2 zu zaehler.

  4. Die Bedingung zaehler <= 6 wird ausgewertet und ergibt WAHR
  5. .
  6. Der Schleifenkörper wird ausgeführt, gibt "Zaehler ist: 2" aus und addiert 2 zu zaehler.

  7. Die Bedingung zaehler <= 6 wird ausgewertet und ergibt WAHR.
  8. Der Schleifenkörper wird ausgeführt, gibt "Zaehler ist: 4" aus und addiert 2 zu zaehler.

  9. Die Bedingung zaehler <= 6 wird ausgewertet und ergibt WAHR.
  10. Der Schleifenkörper wird ausgeführt, gibt "Zaehler ist: 6" aus und addiert 2 zu zaehler.

  11. Die Bedingung zaehler <= 6 wird ausgewertet und ergibt FALSCH.
  12. Der Schleifenkörper wird übersprungen und die Anweisung nach dem Schleifenkörper wird ausgeführt.

FRAGE 2:

Lassen Sie uns nur eine Änderung am Programmfragment vornehmen: wir werden die Initialisierung von zaehler ändern in:

int zaehler = 1;

Was gibt das Programm aus? (Das ist ein leicht knifflige Frage. Bitte nehmen Sie sich für die Antwort Zeit.)

Inhaltsverzeichnis