Alprogramok, modulok
Szintaxis
Az eljárások/függvények definíciója (a kettõ nem válik el élesen):
op azonosító[ indexelés ]( paraméterek ) returns típus azonosító
A deklarációban tehetünk megkötéseket a paraméterként kapott tömbök méretére - csillaggal jelezzük, ha nem tesszük.
A paraméterek típusa lehet:
- érték (val),
- érték-eredmény (var),
- eredmény (res) és
- hivatkozás (ref)
szerint visszaadott.
Az indexelésben megadott számú független metódus keletkezik.
A függvény és az eljárás fogalma nem válik el.
Visszatérési értéket nem kötelezõ feltüntetni.
proc azonosító( paraméterek )
Csak a formális paraméterek neveit kell felsorolnunk (tömbök ilyenkor
x[a:b] alakban jelennek meg).
A metódus visszatérési értékét a törzsben állíthatjuk; az effektív visszatérési érték a változó értéke a metódusból
való kilépéskor (a törzs végén vagy
return kulcsszóval).
procedure azonosító [ indexelés ]( paraméterek ) returns típus azonosító
A deklaráció és definíció összevont alakja.
Példa : maximumkeresés nemüres tömbben
procedure max( real[*] x ) returns int pos
{
pos = 1
real val = x[1]
for [ i = 1 to length( x ) ]
{
if ( x[i] >= val )
{
pos = i
val = x[i]
}
}
}
Paraméterátadás
Túlterhelés
Rekurzió