Rekurzivna funkcija
Rekurzivna funkcija je funkcija koja se poziva tijekom izvođenja. To omogućuje funkciji da se ponovi nekoliko puta, dajući rezultat i kraj svake iteracije. Ispod je primjer rekurzivne funkcije.
funkcija broja (cijeli broj N)
ako (N <= 0) return "Mora biti pozitivan cijeli broj";
if (N> 9) return "Brojanje dovršeno";
else return Count (N + 1);
krajnja funkcija
Koristi se funkcija Count () gore rekurzija za brojanje od bilo kojeg broja između 1 i 9, do broja 10. Na primjer, Count (1) bi vratio 2,3,4,5,6,7,8,9,10. Točka (7) vratila bi se 8,9,10. Rezultat bi se mogao koristiti kao kružni način za oduzimanje broja od 10.
Rekurzivne funkcije su uobičajene u računalnoj znanosti jer omogućavaju programerima pisanje učinkovitih programa koristeći minimalnu količinu koda. Loša strana je što mogu uzrokovati beskonačne petlje i druge neočekivane rezultate ako nisu pravilno napisani. Na primjer, u gornjem primjeru funkcija se prekida ako je broj 0 ili manji ili veći od 9. Ako u funkciju nisu uključeni odgovarajući slučajevi za zaustavljanje izvršavanja, rekurzija će se zauvijek ponavljati, što će uzrokovati pad programa, ili još gore, objesite cijeli računalni sustav.