Java Reference
In-Depth Information
vor();
}
}
void sammle() {
while (kornDa()) {
nimm();
}
}
10.2.7 Endlosschleifen
Schauen Sie sich das folgende Hamster-Programm an und stellen Sie sich vor, es würde bezüglich
der in Abbildung 10.6 skizzierten Hamster-Landschaft gestartet:
void main() {
while (vornFrei()) {
linksUm();
}
}
Abbildung 10.6: Endlosschleifen
Die Ausführung des Programms wird niemals enden. Da sich um den Hamster herum keine Mauern
befinden und der Hamster bei der Ausführung der Iterationsanweisung die Kachel nie verlässt, wird
die Schleifenbedingung immer den Wert true liefern.
Eine while-Anweisung, deren Schleifenbedingung immer den Wert true liefert, wird Endlosschlei-
fe genannt. Da eine Endlosschleife niemals endet, endet auch niemals das Programm, in dem die
Schleife aufgerufen wird. Derartige Endlosprogramme sind im Allgemeinen fehlerhaft, es sei denn,
in der Aufgabenstellung wird dies explizit erlaubt. Endlosschleifen treten häufig aus dem Grund auf,
dass bestimmte Anweisungen innerhalb der Iterationsanweisung vergessen werden. Überprüfen Sie
deshalb Ihre Programme, ob Situationen möglich sind, die zu einer Endlosschleife führen können.
Ergreifen Sie Maßnahmen, die diesen Fehlerfall beseitigen.
Im obigen Beispiel werden Sie relativ schnell merken, dass sich das Programm in einer Endlos-
schleife befindet; der Hamster dreht sich nämlich fortwährend im Kreis. Das muss aber nicht immer
 
Search WWH ::




Custom Search