funkcie

Rekurzívne funkcie

Funkcia je programová metóda, ktorá po skončení svojho vykonávania vráti požadovaný výsledok. Preto telo funkcie musí obsahovať priradenie nejakej hodnoty názvu funkcie . Napríklad, ak sa funkcia vola CISLO, tak bude obsahovať v tele CISLO :=1. To aký výsledok vráti funkcia je deklarované za hlavičkou funkcie, je tam definovaný návratový typ.

Rekurzívne funkcie , v ktorých sa rekurzívne volanie vyskytuje viackrát, sa veľmi často používaju najmä pri výpočte rekurzívných funkcií, napríklad ako faktoriál, výpočet členov Fibonacciho postupnosti, Gama a Beta funkcie (v štatistike).

Pri rekurzívnej funkcií je potrebné určiť podmienku, dokedy sa má funkcia rekurzívne volať (resp. kedy sa má prestať volať). Je potrebné určiť „dno“ od ktorého sa bude názvu funkcie priraďovať nejaká hodnota. Na „dne“ musíme priradiť nejakú konštantnú hodnotu, napríklad číslo, reťazec, znak, atd.

schéma

function xxx :typ výsledku
Begin
  if podmienka 1 then xxx := prikaz1
else xxx:= prikaz2
end;

resp.

if podmienka1 then xxx := prikaz1
if podmienka2 then xxx := prikaz2
...
if podmienkaN then xxx := prikazN
else xxx:= prikazN+1