Java Reference
In-Depth Information
immer noch erfüllt ist, wird die Iterationsanweisung ein weiteres Mal ausgeführt. Dieser Prozess
(Überprüfung der Schleifenbedingung und falls diese erfüllt ist, Ausführung der Iterationsanwei-
sung) wiederholt sich solange, bis (hoffentlich) irgendwann einmal die Bedingung nicht mehr erfüllt
ist.
10.2.4 Korrekte Hamster-Programme
Im Folgenden werden zu Hamster-Aufgaben die Hamster-Landschaften nicht mehr explizit ange-
geben, sondern nur noch durch ihre charakteristischen Merkmale beschrieben. Hamster-Programme
müssen für alle (!) Landschaften korrekt arbeiten, die diese Merkmale beim Start des Programms
erfüllen. Arbeitet ein Hamster-Programm auch nur für eine gegebene Landschaft, die die Merkmale
erfüllt, nicht korrekt, gilt das Hamster-Programm insgesamt als fehlerhaft.
Gegeben eine Hamster-Aufgabe und eine Charakterisierung einer Hamster-Landschaft. Ein Hams-
ter-Programm ist korrekt (bezüglich der Hamster-Aufgabe und der Landschaftscharakterisierung),
wenn es alle folgenden Bedingungen erfüllt:
• Es muss syntaktisch korrekt sein.
• Es muss die Aufgabenstellung für alle sich aus der Landschaftscharakterisierung ergebenden
möglichen Ausgangssituationen korrekt und vollständig lösen.
• Es darf für keine sich aus der Landschaftscharakterisierung ergebenden möglichen Ausgangs-
situation zu einem Laufzeitfehler führen.
• Es muss nach endlicher Zeit für alle sich aus der Landschaftscharakterisierung ergebenden
möglichen Ausgangssituationen enden, es sei denn, eine Nicht-Terminierung des Programms
wird in der Aufgabenstellung explizit erlaubt.
10.2.5 Beispiele
Es folgen einige Beispiele, die den Einsatz und die Auswirkungen von while-Anweisungen verdeut-
lichen.
10.2.5.1 Beispiel 1
Das Hamster-Programm für das oben skizzierte Problem, dass der Hamster irgendwo in einer Land-
schaft steht und bis zur nächsten Mauer laufen soll, sieht folgendermaßen aus:
void main() {
while (vornFrei()) {
vor();
}
}
Überprüfen wir einmal, ob das Programm für die Landschaft in Abbildung 10.1 (links) korrekt ar-
beitet (siehe auch Abbildung 10.3 (links)).
Search WWH ::




Custom Search