Ero sivun ”Rekursio” versioiden välillä

[katsottu versio][katsottu versio]
Poistettu sisältö Lisätty sisältö
Ei muokkausyhteenvetoa
Ipr1 (keskustelu | muokkaukset)
Rivi 20:
return n * factorial(n-1)
 
Yleinen ohjelmointivirhe on niin sanottu [[ikuinen silmukka]], jossa funktiokutsu ei koskaan palaa vaan etenee yhä toistuvasti saman funktion kautta rekursiivisesti kiertäen. [[Pino]] on välttämätön rekursiivisten aliohjelmien toteuttamiseen, mutta pinolla on myös rajattu koko: useissa ohjelmointikielissä rajaamaton rekursio voi aiheuttaa pinon ylivuodon ({{k-en|stack overflow}}).
 
Mikäli ohjelmakoodin rekursiivinen osa on niin sanottu [[häntärekursio]], voidaan rekursio muuttaa tavalliseksi silmukaksi.