×
produktlogotitle

Seite: bac_parameter
Diese Seite wurde aktualisiert am 08.06.2021

LOGIN
Benutzer:
Passwort:
 
   if1.net-schulbuch.de

 

Prozeduren mit Parametern 

Leider können wir mit dem mehrfachen Aufruf derselben Prozedur nur immer gleiche Grafiken zeichnen. Durch entsprechende Bewegung der Turtle im Hauptprogramm können sie aber an unterschiedlichen Positionen liegen. Es wäre hilfreich, wenn man  mit einer Prozedur z.B Quadrate mit unterschiedlichen Seitenlängen zeichnen könnte. Um das zu realisieren, darf in der Prozedur bei der Vorwärs-Anweisung nicht eine besimmte Zahl angedockt werden, sondern stattdessen eine Variable, die erst beim Aufruf der Prozedur einen Wert bekommt. Das nebenstehende Porgramm zeichnet zwei Quadrate mit den Seitenlängen 100 bzw. 200. Diese Werte werden beim Aufruf der Prozedur quadrat der Variablen laenge der Prozedur zugewiesen. Die Variablen einer Prozedur, die erst beim Aufruf einen Wert zugewiesen bekommen, heißen Parameter.

Das Programm wird wie folgt erstellt:

  1. Ziehe einen Prozedurblock in das Programmfenster
  2. Nenne die Prozedur quadrat.
  3. Klicke auf das weiße Zahnrad in dem blauen Kreis. Es öffnet sich ein Quadrat zur Erzeugung von Parametern.
  4. Nennen die Variable laenge.
  5. Ziehe die Variable in den Parameterblock.
  6. Schließe das Parameter-Fenster durch Klick auf das Zahnrad. 
  7. Ziehe aus dem Prozedurenmenü den Block "quadrat mit laenge" unter den Programm-Block.
  8. Ziehe aus dem Arithmetik-Menü einen Zahlblock hinter laenge und gib 100 ein.
  9. Ziehe aus dem Prozeduren-Menü einen weitern Block "quadrat mit laenge" in das Hauptprogramm.
  10. Ziehe aus den Arithmetik-Menü einen Zahlblock hinter laenge und gib 200 ein.

Das folgende Video zeigt die Erstellung eines Programms, das unter Verwendung einer Prozedur rechteck mit den Parametern laenge und breite zwei unterschiedliche Rechtecke zeichnet. 

vorhergehender Absatz -1

Auftrag

Das nebenstehende Programm zeichnet ein regelmäßiges Dreicek, Viereck, Fünfeck und Sechseck jeweils beginnend in der Position (0|0).

Entwickle die fehlende Prozedur n_neck mit den Parametern ecken und laenge. Dem Parameter ecken wird beim Aufruf die Anzahl der Ecken, die das N-Eck haben soll, übergeben. laenge ist die Seitenlänge des N-Ecks.

 

Für die Prozedur wurde eine Variable winkel erzeugt, deren Wert der winkel ist, um den sich die Turtle nach dem Zeichnen einer Seite des N-Ecks drehen muss. Da sich die Turtle insgesamt um 3600 drehen muss, um die Ausgangsrichtung zu erreichen, ergibt sich dieser Winkel durch Division von 360 durch die Anzahl der Ecken, als z.B. beim Dreieck 1200, beim Viereck 900 und beim Sechseck 600.
 

Dokumentation 

Wenn man im Kopf einer Prozedur auf das weiße Fragezeichen im blauen Kreis klickt, geht ein kleine rechteckiges Fenster auf, in dem man die Prozedur dokumentieren sollte. Dies dient dazu die Funktionsweise und die Bedeutung der Parameter nachlesen zu können, wenn man die Prozedur später noch einmal benutzen will oder den Quelltext weitergibt. Die Dokumentation einer Prozedur sollte folgende Punkte enthalten.

  1. Funktionsweise der Prozedur
  2. Bedeutung der Parameter
  3. Ausgangsposition der Turtle
  4. Position des Stifts (oben oder unten)
  5. Richtung der Turtle

Wenn die Endposition und/oder Richtung von der Ausgangssituation abweicht, sollten auch diese noch angegeben werden.

Für die Prozedur n_eck ergibt sich folgende Dokumentation

  1. Zeichnet ein regelmäßiges N-Eck.
  2. ecken: Anzahl der Ecken, laenge: Länge der Seiten
  3. Position: (0|0)
  4. Stift: unten
  5. Richtung: 900

Im Beschreibungsfenster von Blockly sind leider nur die letzten drei Zeilen der Eingabe zu sehen. Wenn man auf den Reiter Python klickt, wird das Turtle-Blockly-Programm in der textbasierten Programmiersprache Python angezeigt und am Anfang die vollständige Dokumentation. Wir werden später darauf zurückkommen.

Impressum
© 2023  Net-Schulbuch.de
10.00  0.3361  8.1.28