Prozeduren sind eine Art von "Programm". Wenn eine Prozedur
aufgerufen wird, werden die Anweisungen im Körper von der Prozedur
ausgeführt. Eine Prozedur wird mit dem Schlüsselwort lerne
definiert.
lerne Name_von_Prozedur :v1 :v2 :v3.... [:v4 ....] [:v5 ....] Körper der Prozedur Ende
Name_von_Prozedur
ist der Name, der der Prozedur
gegeben wird.
:v1 :v2 :v3
stehen für die Variablen, die innerhalb der
Prozedur benutzt werden. (lokale Variablen).
[:v4 ... ], [:v5...]
sind optionale Variablen, die wir
der Prozedur hinzufügen können (gehen Sie nach unten für mehr
Erklärungen).
Körper der Prozedur
stellt die Befehle dar, die
ausgeführt werden, wenn diese Prozedur gerufen wird.
Z.B.:
lerne quadrat :s wiederhole 4 [vw :s re 90] EndeDie Prozedur wird
quadrat
genannt und nimmt einen s
genannten Parameter. quadrat 100
wird deswegen ein Quadrat
produzieren, das eine Seitenlänge von 100
hat. (Betrachten
Sie die Beispiele von Prozeduren am Ende vom Handbuch.) Seit Version 0. 7 c, ist es möglich, Bemerkungen nach dem durch
#
eingeleiteten Code einzufügen.
lerne quadrat :s # diese Prozedur erlaubt es, ein Quadrat zu zeichnen dessen Seite :s ist. wiederhole 4 [vw :s re 90] # praktisch, nicht wahr? Ende
Optionale Variablen
Es ist nun möglich, einer Prozedur von XLogo optionale Argumente hinzu zu fügen. Schauen Sie sich das Beispiel unten an:
lerne vieleck :n [:l 10] wiederhole :n [vw :l re 360/:n] Ende
# mit diesem Befehl wird ein reguläres Vieleck gezeichnet # 20 Seiten der Länge 10 vieleck 20
Während der Interpretation ist die Variable :l
durch
ihren Standardwert ersetzt worden, ich meine die 10
. Wenn
wir diesen Wert ändern wollen, müssen wir die Prozedur Vieleck zwischen
Klammern aufrufen, um dem Interpreter zu sagen, dass wir optionale
Argumente benutzen werden.
# Dieser Befehl wird ein reguläres Polygon mit Länge 20 zeichnen #-Seiten. Jede Seite ist lang 5. (vieleck 20 5)
# Dies ist ein Quadrat mit jeder Seite der Länge 100 (Vieleck 4 100)