#limit (11.0)##pagelength (16.5)##block# 
#start (2.0,0.0)# 
#page (61)# 
#headodd# 
#center#gs-Herbert und Robbi#right#% 
 
#end# 
#headeven# 
%#center#gs-Herbert und Robbi 
 
#end# 
#center#5 
 
#center#Detailbeschreibung 
#center#der 
#center#Basisbefehle 
 
 
#on("u")#'vor' bewirkt:#off("u")# 
  -  ein Eingabezeichen wird von der Tastatur gelesen
     und ausgewertet. 
  -  es wird je nach Verzögerungsfaktor (eine vorgege­
     bene Wartezeit, die auch während des Programmlaufs
     verändert werden kann) gewartet. 
  -  falls die Kachel vor dem Hamster/Roboter noch frei
     ist und zur Landschaft/zum Arbeitsfeld gehört,
     geht der Hamster/ Roboter um eine Kachel in der
     augenblicklichen Richtung vorwärts. 
  -  falls vor dem Hamster/Roboter ein Hindernis liegt,
     oder wenn er im Begriff ist, aus der Landschaft/aus
     dem Arbeitsfeld herauszulaufen, wird das Programm
     mit entsprechender Fehlermeldung abgebrochen. 
 
#on("u")#'links um' bewirkt:#off("u")# 
  -  wie bei 'vor': Annahme eines Tastendruckes und
     Warten. 
  -  eine Drehung des Hamsters/Roboters um 90 Grad ge­
     gen den Uhrzeigersinn. 
 
#on("u")#'nimm' bewirkt:#off("u")# 
  -  wie bei 'vor': Annahme eines Tastendruckes und
     Warten. 
  -  falls auf der Kachel, auf der der Hamster/Roboter
     steht, kein Korn/Werkstück liegt, wird das Programm
     mit entsprechender Fehlermeldung abgebrochen. 
  -  falls dort genau ein Korn/ein Werkstück liegt, wird
     dieses auf dem Bildschirm entfernt. Es wird zu denen
     in den Backentaschen/im Behälter addiert. Auf dem
     Bildschirm erscheint an der Stelle (" ."). 
  -  falls mehrere Körner/Werkstücke dort liegen, wird
     eines zu denen in den Backentaschen/im Behälter
     addiert und von denen auf der Kachel subtrahiert.
     Auf dem Bildschirm erscheint weiterhin an der Stel­
     le (" o"). 
 
#on("u")#'gib' bewirkt:#off("u")# 
  -  wie bei 'vor': Annahme eines Tastendruckes und
     Warten. 
  -  falls die Backentaschen/der Behälter leer sind/ist,
     wird das Programm mit entsprechender Fehlermel­
     dung abgebrochen. 
  -  falls auf der Kachel schon ein Korn/Werkstück oder
     mehrere Körner/Werkstücke liegen, wird zu ihnen
     eines addiert und von denen in den Backentaschen/
     im Behälter subtrahiert. Der Bildschirm ändert sich
     nicht. 
  -  falls noch kein Korn/Werkstück auf dieser Kachel
     liegt, wird auf dem Bildschirm ein (" o") ausgegeben
     und von den Körnern/Werkstücken in den Backenta­
     schen/im Behälter ein Korn/Werkstück subtrahiert. 
 
#on("u")#'vorn frei'#off("u")# 
  -  liefert den Wahrheitswert TRUE, wenn vor dem Ham­
     ster/ Roboter keine Hinderniskachel liegt, #on("u")#also
     auch dann, wenn der Hamster/Roboter im Begriff ist,
     über die Landschafts-/Arbeitsfeldgrenze (den
     Bildschirmrand) hinauszulaufen!#off("u")# Wenn vor dem Ham­
     ster/Roboter eine Hinderniskachel liegt, wird der
     Wahrheitswert FALSE geliefert. 
 
#on("u")#'links frei'#off("u")# 
  -  liefert den Wahrheitswert TRUE, wenn in Laufrich­
     tung links vom Hamster/ Roboter keine Hindernis­
     kachel liegt, #on("u")#also auch dann, wenn links vom Ham­
     ster/Roboter die Landschafts-/Arbeitsfeldgrenze
     (der Bildschirmrand) ist!#off("u")# Wenn links vom Hamster/
     Roboter eine Hinderniskachel liegt, wird der Wahr­
     heitswert FALSE geliefert. 
 
#on("u")#'rechts frei'#off("u")# 
  -  liefert den Wahrheitswert TRUE, wenn in Laufrich­
     tung rechts vom Hamster/Roboter keine Hindernis­
     kachel liegt, #on("u")#also auch dann, wenn rechts vom Ham­
     ster/Roboter die Landschafts-/Arbeitsfeldgrenze
     (der Bildschirmrand) ist!#off("u")# Wenn rechts vom Hamster/
     Roboter eine Hinderniskachel liegt, wird der Wahr­
     heitswert FALSE geliefert. 
 
#on("u")#'hinten frei'#off("u")# 
  -  liefert den Wahrheitswert TRUE, wenn in Laufrich­
     tung hinter dem Hamster/Roboter keine Hindernis­
     kachel liegt, #on("u")#also auch dann, wenn hinter dem Ham­
     ster/Roboter die Landschafts-/Arbeitsfeldgrenze
     (der Bildschirmrand) ist!#off("u")# Wenn hinter dem Hamster/
     Roboter eine Hinderniskachel liegt, wird der Wahr­
     heitswert FALSE geliefert. 
 
#on("u")#'korn da' und 'werkstueck da'#off("u")# 
  -  liefern den Wahrheitswert TRUE, wenn auf der
     Kachel, auf der der Hamster/Roboter steht, minde­
     stens ein Korn/Werkstück liegt. Ansonsten wird der
     Wahrheitswert FALSE geliefert. 
 
#on("u")#'korn vorn' und 'werkstueck vorn'#off("u")# 
  -  liefern den Wahrheitswert TRUE, wenn auf der
     Kachel, die in Laufrichtung vor dem Hamster/Robo­
     ter liegt, mindestens ein Korn/Werkstück liegt. An­
     sonsten wird der Wahrheitswert FALSE geliefert. 
  -  Zur "Untersuchung" wird die vor ihm liegende
     Kachel - sofern dort kein Hindernis ist - von ihm
     betreten. Wenn er im Begriff ist, aus der Land­
     schaft/dem Arbeitsfeld herauszulaufen, wird das
     Programm mit entsprechender Fehlermeldung abge­
     brochen. 
 
#on("u")#'korn links' und 'werkstueck links'#off("u")# 
  -  liefern den Wahrheitswert TRUE, wenn auf der
     Kachel, die in Laufrichtung links vom Hamster/
     Roboter liegt, mindestens ein Korn/Werkstück liegt.
     Ansonsten wird der Wahrheitswert FALSE geliefert. 
  -  Zur "Untersuchung" wird die links neben ihm lie­
     gende Kachel - sofern dort kein Hindernis ist - von
     ihm betreten. Wenn er im Begriff ist, aus der Land­
     schaft/dem Arbeitsfeld herauszulaufen, wird das
     Programm mit entsprechender Fehlermeldung abge­
     brochen. 
 
#on("u")#'korn rechts' und 'werkstueck rechts'#off("u")# 
  -  liefern den Wahrheitswert TRUE, wenn auf der
     Kachel, die in Laufrichtung rechts vom Hamster/
     Roboter liegt, mindestens ein Korn/Werkstück liegt.
     Ansonsten wird der Wahrheitswert FALSE geliefert. 
  -  Zur "Untersuchung" wird die rechts neben ihm lie­
     gende Kachel - sofern dort kein Hindernis ist - von
     ihm betreten. Wenn er im Begriff ist, aus der Land­
     schaft/dem Arbeitsfeld herauszulaufen, wird das
     Programm mit entsprechender Fehlermeldung abge­
     brochen. 
 
#on("u")#'korn hinten' und 'werkstueck hinten'#off("u")# 
  -  liefern den Wahrheitswert TRUE, wenn auf der
     Kachel, die in Laufrichtung hinter dem Hamster/
     Roboter liegt, mindestens ein Korn/Werkstück liegt.
     Ansonsten wird der Wahrheitswert FALSE geliefert. 
  -  Zur "Untersuchung" wird die hinter ihm liegende
     Kachel - sofern dort kein Hindernis ist - von ihm
     betreten. Wenn er im Begriff ist, aus der Land­
     schaft/dem Arbeitsfeld herauszulaufen, wird das
     Programm mit entsprechender Fehlermeldung abge­
     brochen. 
 
#on("u")#'backen leer' und 'behaelter leer'#off("u")# 
  -  liefern den Wahrheitswert TRUE, wenn kein Korn/
     kein Werkstück in den Backentaschen/im Behälter
     notiert ist. Ansonsten wird der Wahrheitswert FALSE
     geliefert.