Eine Prozedurdeklaration ist einem kompletten
Programm sehr ähnlich. Im Deklarationsteil
können lokale Typen und Variablen und sogar lokale
Prozeduren und Funktionen deklariert werden.
Sehr oft möchte man Daten an Prozeduren übergeben.
In diesen Fällen wird die Prozedurdeklaration
um eine Parameterliste erweitert:
In der Parameterliste
werden Namen und Typen der Parameter
vereinbart.
Diese Vereinbarung hat große Ähnlichkeit mit einer
Variablenvereinbarung.
ARRAYs oder RECORDs dürfen nicht direkt in
einer Parameterliste erscheinen.
Soll ein solcher Parameter benutzt werden, dann muß
ein Typ definiert werden, dessen Name in der Parameterliste
verwendet wird.
TYPE feld=ARRAY[1..10] OF integer; PROCEDURE hoo(i: integer; a: feld);
PROGRAM ausgaben(input, output); PROCEDURE ausgabe(n: integer; x,y: integer); VAR i: integer; BEGIN {ausgabe} FOR i:=1 TO n DO writeln(x:5,y:5) END; {ausgabe} BEGIN {Hauptprogramm} ausgabe(2,1,2); ausgabe(1,2+3,1+1) END.