Java Reference
In-Depth Information
Verbesserung Sie haben sicher schon festgestellt, dass die beiden while-Anweisungen des Pro-
gramms identisch sind. Aus Gründen der Übersichtlichkeit bietet es sich also an, eine Prozedur
laufeBisZurNaechstenWand zu definieren und diese zweimal aufzurufen. Damit sieht das Pro-
gramm dann folgendermaßen aus:
void main() {
laufeBisZurNaechstenWand();
linksUm();
laufeBisZurNaechstenWand();
}
void laufeBisZurNaechstenWand() {
while (vornFrei()) {
vor();
}
}
10.2.5.3 Beispiel 3
Hamster-Aufgabe Der Hamster befindet sich, wie in Beispiel 2, irgendwo in einem rechteckigen
durch Mauern abgeschlossenen sonst aber mauerlosen Raum unbekannter (aber endlicher) Größe.
Auf den einzelnen Kacheln kann jeweils eine beliebig große aber endliche Anzahl an Körnern liegen.
Der Hamster soll in eine Ecke laufen und dann anhalten. Dabei soll er alle Körner einsammeln, die er
auf seinem Weg findet. Abbildung 10.4 enthält einige Beispiele für den skizzierten Landschaftstyp.
Programm
void main() {
sammle();
laufeBisZurNaechstenWandUndSammle();
linksUm();
laufeBisZurNaechstenWandUndSammle();
}
void sammle() {
while (kornDa()) {
nimm();
}
}
void laufeBisZurNaechstenWandUndSammle() {
while (vornFrei()) {
vor();
sammle();
}
}
Search WWH ::




Custom Search