Java Reference
In-Depth Information
der Hamster die der Körneranzahl entsprechende Anzahl an Feldern nach Norden laufen. Ist die
Zahl nicht durch 4, wohl aber durch 3 teilbar, dann ist die einzuschlagende Richtung Osten. Bei
einer weder durch 4 noch durch 3 aber durch 2 teilbaren Zahl, muss sich der Hamster nach Süden
durchschlagen. Ansonsten ist die Zielrichtung Westen.
16.6.2 Aufgabe 2
Implementieren Sie für den Hamster eine Funktion void graseAb(int radius) , die folgendes
tun soll: Der Hamster soll im Umkreis von radius -Feldern alle Körner einsammeln. Implemen-
tieren Sie die Funktion zunächst unter der Voraussetzung, dass sichergestellt ist, dass sich in dem
angegebenen Umkreis keine Mauer befindet. Schauen Sie sich dazu die Lösung von Beispielpro-
gramm 2 aus Abschnitt 16.5.2 an. Verallgemeinern Sie dann die Funktion für beliebige Territorien.
16.6.3 Aufgabe 3
Nutzen Sie die in Aufgabe 2 entwickelte Funktion für die Implementierung eines alternativen Lö-
sungsprogramms zu Beispielprogramm 3 aus Abschnitt 16.5.3.
16.6.4 Aufgabe 4
Entwickeln Sie ein alternatives Lösungsprogramm zu der Hamster-Aufgabe des Beispielprogramms
2 aus Abschnitt 14.10.2, in dem keine globalen Variablen verwendet werden. Die Aufgabe lautete:
Der Hamster befindet sich in einem geschlossenen, körnerlosen Raum unbekannter Größe. Rechts
von ihm befindet sich eine Wand und vor ihm das Feld ist frei (siehe Beispiel in Abbildung 16.5).
Der Hamster soll solange an der Wand entlanglaufen, bis er irgendwann wieder sein Ausgangsfeld
erreicht. Er hat unter Umständen anfangs kein Korn in seinem Maul!
Abbildung 16.5: Typische Hamster-Landschaft zu Aufgabe 4
16.6.5 Aufgabe 5
Der Hamster steht irgendwo in einem durch Mauern abgeschlossenen quadratischen Raum unbe-
kannter Größe ohne innere Mauern und ohne Körner auf den Kacheln. Die Wände sind eine ungerade
 
Search WWH ::




Custom Search