Dasar-Dasar Pemrograman Rekursi
Rekursi Suatu fungsi dapat memanggil dirinya sendiri. Contoh penggunaan: Faktorial Deret Fibonacci Pangkat (xn) Tower of Hanoi Pencarian dalam tree Pengurutan data
Rekursif Syarat: Terdapat base case sebagai kondisi dasar sehingga proses rekursi dapat berhenti.
f(n)=1, untuk n = 0,1 basecase f(n)=0, untuk n < 2 n! = n*(n-1)! Contoh: Faktorial f(n)=n!, untuk n ≥ 2 f(n)=1, untuk n = 0,1 basecase f(n)=0, untuk n < 2 n! = n*(n-1)!
Contoh: Faktorial uses crt; var n:integer; function fakto(n:integer):integer; begin if ((n=0) or (n=1)) then fakto:=1 else if n>=2 then fakto:=n*fakto(n-1) else fakto:=0; end; clrscr; write('Masukkan n = ');readln(n); writeln(n,'!= ',fakto(n)); readln; end.