Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
12.7. EIN WEITERES BEISPIEL 153<br />
#<br />
#<br />
#<br />
#<br />
#<br />
12.7.3 Entwurf<br />
############<br />
o o o o o #<br />
o o o o o #<br />
> o<br />
o o #<br />
########### #<br />
#<br />
#<br />
#<br />
#<br />
####<br />
o o #<br />
> o #<br />
####<br />
#<br />
#<br />
#<br />
##<br />
> #<br />
##<br />
(a) (b) (c)<br />
Abbildung 12.3: Testmenge zu Beispiel 2<br />
Eine intuitiveLosungsidee hat folgende Gestalt: Der Hamster soll die Reihe " abgrasen\, in der er<br />
sich gerade be ndet. Anschlie end soll er testen, ob sichnordlichvon ihm noch eine weitere Reihe<br />
be ndet. Wenn ja, soll er sich in diese Reihe begeben und diese Reihe abgrasen. Dieser Vorgang<br />
soll solange wiederholt werden, bis der Hamster die nordliche Begrenzungswand erreicht.<br />
In der Hamstersprache wird diese Losungsidee folgenderma en formuliert:<br />
// der Hamster soll einzelne Koernerreihen abgrasen,<br />
// solange wie noch weitere Reihen existieren<br />
void main()<br />
{<br />
ernte_eine_reihe();<br />
while (weitere_reihe_existiert())<br />
{<br />
begib_dich_in_naechste_reihe();<br />
ernte_eine_reihe();<br />
}<br />
}<br />
// der Hamster soll alle Koerner in einer Reihe einsammeln<br />
void ernte_eine_reihe()<br />
{<br />
}<br />
// der Hamster soll sich in die naechste Reihe in noerdlicher<br />
// Richtung begeben<br />
void begib_dich_in_naechste_reihe()<br />
{<br />
}<br />
// Ueberpruefung, ob in noerdlicher Richtung eine weitere nicht<br />
// mit Mauern besetzte Reihe existiert<br />
boolean weitere_reihe_existiert()<br />
{<br />
}