Prozeduren in Puck

Aus Informatik
Wechseln zu: Navigation, Suche
Eine Prozedur (auch Unterprogramm) in der Programmierung ist ein separater Programmteil, der eine bestimmte Aufgabe in wiederverwendbarer Art umsetzt.

Beim Programmstart von Puck und beim Erstellen einer neuen Datei legt Puck gleichzeitig mit dem Module-Baustein eine Prozedur ProgMain an. Beim Start des Programms wird die Prozedur ProgMain als erstes ausgeführt.

Puck module1.png

In einem Programm können für bestimmte Teilaufgaben weitere Prozeduren angelegt werden. Dies geschieht durch Anklicken des Pfeils rechts neben ProgMain. Die neu angelegte Prozedur bekommt zuerst den Namen Proc1; dieser kann aber in der Attributtabelle geändert werden.

Puck proc1.png

Eine Liste der Prozeduren findet man auch unter der Liste der Bausteine.

Puck proc3.png

Von dort aus kann jeder Prozedur-Baustein (genau einmal) in den Arbeitsbereich gezogen werden.

Puck proc2.png

Innerhalb einer jeden Prozedur können (lokale) Variable vereinbart werden. Dies erreicht man durch Anklicken des schwarzen Pfeils hinter Var. Diese Variablen haben lediglich innerhalb einer solchen Prozedur Gültigkeit, d. h. es könnte also z. B. in jeder Prozedur eine Variable a vom Datentyp integer geben, die jeweils andere Werte besitzt und auch jeweils andere Aufgaben erfüllt.

Puck proc4.png

Um Daten unter den einzelnen Prozeduren austauschen zu können, können Werte- und Referenzparameter verwendet werden. Diese können durch Anklicken des Pfeils im grünen Prozedurkopf hinzugefügt werden. Die Art und der Datentyp des Parameters können in der Attributtabelle eingestellt werden.

Puck proc6.png

Der Datentyp und die Art des Parameters wird dann durch Farben und Muster angezeigt:

Puck proc5.png

Die hier gezeigte Prozedur besitzt 4 Parameter (e - Werteparameter (integer), f - Referenzparameter (integer), g - Werteparameter (boolean), h - Referenzparameter (boolean)) und eine lokale Variable a.

Jede Prozedur kann von einer anderen Prozedur aus aufgerufen werden. Dafür wird der Call-Baustein verwendet.