Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
70 KAPITEL 8. PROZEDUREN<br />
8.5.5 Flexibilitat und Wiederverwendbarkeit<br />
Wie bereits erwahnt, sind in diesem Kapitel nur die fundamentalen Grundlagen des Prozedurkonzeptes<br />
eingefuhrt worden. In spateren Kapiteln wird das Konzept noch erweitert. In Kapitel<br />
11 lernen Sie das Funktionskonzept kennen. Kapitel 14 verallgemeinert das Prozedur- und<br />
Funktionskonzept. Kapitel 15 fuhrt sogenannte Parameter ein, durch die Prozeduren exibler<br />
eingesetzt werden konnen. Schlie lich werden Sie im dritten Teil dieses Kurses (Objektorientierte<br />
Programmierung) Methoden kennenlernen, die es ermoglichen, Prozeduren so zu de nieren,<br />
da sie von verschiedenen Programmen aus aufgerufen und auch anderen Programmierern direkt<br />
zur Verfugung gestellt werden konnen. Im Moment mussen Sie leider noch jede Prozedur, die in<br />
einem Programm aufgerufen wird, auch in diesem Programm de nieren.<br />
8.6 Beispielprogramme<br />
In diesem Abschnitt werden einige Beispiele fur Hamster-Aufgaben gegeben und eine oder mehrere<br />
Musterlosungen vorgestellt. Dabei werden Prozeduren eingesetzt. Schauen Sie sich die Beispiele<br />
genau an, und versuchen Sie, die Losungen nachzuvollziehen.<br />
8.6.1 Beispielprogramm 1<br />
Aufgabe:<br />
Gegeben sei das Hamster-Territorium in Abbildung 8.5. Auf den Kacheln, auf denen Korner<br />
liegen, liegt jeweils nur ein Korn. Der Hamster soll alle Korner einsammeln.<br />
Losung:<br />
#<br />
#<br />
#<br />
#<br />
#<br />
#<br />
#<br />
void main()<br />
{<br />
ernte_reihe();<br />
rechts_um();<br />
zwei_vor();<br />
rechts_um();<br />
ernte_reihe();<br />
}<br />
########### #######<br />
# #<br />
> o<br />
# #<br />
o o<br />
#<br />
#<br />
o o o<br />
#<br />
# # #<br />
# # # #<br />
########### #######<br />
Abbildung 8.5: Hamsterlandschaft zu Beispielprogramm 1<br />
#<br />
#<br />
#<br />
#<br />
#<br />
#<br />
#