Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
46 KAPITEL 6. GRUNDLAGEN DES HAMSTER-MODELLS<br />
6.2.3 Hamsteraufgaben<br />
Ihnen als Hamster-Programmierer werden nun bestimmte Aufgaben gestellt, die Sie durch die<br />
Steuerung des Hamsters durch eine Landschaft zu losen haben. Diese Aufgaben werden im folgenden<br />
Hamsteraufgaben und die entstehenden Losungsprogramme Hamsterprogramme genannt.<br />
Zusatzlich zu einer Aufgabe werden dabei zunachst bestimmte Hamsterlandschaften fest vorgegeben,<br />
in denen der Hamster die Aufgabe zu losen hat.<br />
Beispiel fur eine Hamsteraufgabe: Gegeben sei die Landschaft in Abbildung 6.2. Der Hamster<br />
soll zwei beliebige Korner fressen.<br />
# ########### ########<br />
#<br />
v o #<br />
#<br />
#<br />
# # ##### #<br />
#<br />
#<br />
o o o #<br />
#<br />
#<br />
#<br />
# # # # # #####<br />
#<br />
# #<br />
#<br />
# ########### ########<br />
Abbildung 6.2: Hamsterlandschaft fur Beispiel 1<br />
Spater { ab Kapitel 10 { werden die Landschaften zu einer Hamsteraufgabe nicht mehr fest<br />
vorgegeben. Sie werden dann nur noch durch vorgegebene Eigenschaften charakterisiert, d.h. der<br />
Hamster wird in der Lage sein, eine bestimmte Aufgabe in unterschiedlichen (aber gleichartigen)<br />
Landschaften zu losen.<br />
6.3 Grundlagen der Hamstersprache<br />
6.3.1 Lexikalik<br />
Der Zeichenvorrat, den Sie beim Erstellen von Hamsterprogrammen (und Java-Programmen)<br />
verwenden durfen, entspricht dem 16-Bit-Zeichensatz Unicode. Sie brauchen an dieser Stelle<br />
nicht genau zu wissen, was das bedeutet. Alles was fur Sie wichtig ist, ist da Sie im Prinzip alle<br />
Zeichen benutzen durfen, die Sie auf Ihrer Tastatur vor nden.<br />
6.3.2 Token<br />
Die Token einer Sprache, auch lexikalische Einheiten genannt, sind die Worter, auf denen sie basiert.<br />
Wenn Sie Ihr Programm compilieren, teilt der Compiler Ihren Quellcode in Token auf und<br />
versucht herauszu nden, welche Anweisungen, Bezeichner und andere Elemente der Quellcode<br />
enthalt.<br />
Token mussen in der Hamstersprache (und in Java) durch Wortzwischenraume voneinander getrennt<br />
werden. Zu den Wortzwischenraumen zahlen Leerzeichen, Tabulatoren, Zeilenvorschubund<br />
Seitenvorschubzeichen. Diese im folgenden kurz als Trennzeichen bezeichneten Zeichen haben<br />
ansonsten keine Bedeutung.