Recursion er et grundlæggende begreb i datalogi. Det er knyttet til matematik, hvor visse funktioner kan defineres i form af sig selv. Mens få en rigtig god fornemmelse for rekursion kan være svært, at være i stand til at skrive kode rekursivt er en vigtig færdighed . Rekursive algoritmer ofte afslører indsigt i struktur eller karakter af et problem. Rekursion kan anvendes til at beregne eksponentielle kræfter . Instruktioner
1
Åbn en teksteditor som Notesblok . Notesblok kan tilgås på
2
Indtast følgende definition for en rekursiv eksponentiation funktion " Start -> Alle Programmer- > Tilbehør-> Notesblok. " : Hej
( define ( Expt basen n )
(hvis (= n 0)
1
( * base ( Expt base ( - n 1 )))) )
Denne definition er givet i Lisp . Dog kan den samme funktion skrives på ethvert sprog , der understøtter rekursion . Først den funktion har til at teste for exit betingelse, som i vores tilfælde sker der, hvis n = 0 . Så vores funktion ganger basen gange eksponenten af basen til den oprindelige magt minus 1 . Dette svarer den matematiske definition af eksponentiation .
3
Åbn definitionen i en tolk. Hvis du bruger en Lisp tolk , skal du bruge funktionen som så: .
( Expt 2 2)
Dette vil returnere 4
< br >