Saintifik
Teknik
REKURSIF
DEPARTEMEN MATEMATIKA
Fakultas Matematika dan Ilmu Pengetahuan Alam
Universitas Indonesia
Tim Dosen 2014
Algoritma Rekursif
Adalah algoritma yang memanggil dirinya
sendiri.
Komponennya :
Basis
: kondisi berhenti
Fungsi rekurens : memanggil dirinya dengan
parameter yang berbeda dan menuju basis.
Algoritma Rekursif
Contoh :
10
+
3
+
2
24
*
3
2
1
Algoritma Rekursif
= 0 dan
F(x) = x2 + 2F(x-1)
Algoritma Rekursif
Jawab :
F(1)
=1
F(2) = 6
F(3) = 21
F(4) = 58
10
16
*
9
21
+
4
+
1
*
+
0
11
Algoritma Rekursif
Diketahui :
f(x) + f(x+1) = 2x2 dan f(31) = 99
Tentukan nilai f(99) !
12
Algoritma Rekursif
Jawab :
f(x) + f(x+1) = 2x2 f(x+1) = 2x2 f(x)
13
Algoritma Fibonacci
Barisan bilangan :
F0 = 0 dan F1 = 1
Fn = Fn-1 + Fn-2
Buatlah algoritmanya !
Jika n besar (misal 40) maka berapa kali
pemanggilan fungsi rekursifnya..?
14
Algoritma Fibonacci
Jawab :
Fib (N)
If N 1 then
Fib
Else
Fib
=N
= Fib(N-1) + Fib(N-2)
End If
15
Algoritma Fibonacci
Atau Jawab :
Fib (N)
If N = 0 atau N = 1 then
Fib
Else
Fib
=N
= Fib(N-1) + Fib(N-2)
End If
16
Algoritma Fibonacci
Simulasi : untuk N = 4
Hasilnya
4
2
1
+
0
3
2
+
1
0
Algoritma & Pemrograman Saintifik
17
Latihan 1 :
18
Jawaban Latihan 1
MULAI
N,B
I=1
Tidak
NB
Ya
S(I) = MOD(N,B)
S(I) = N
N = INT(N,B)
K=I
I=I+1
STOP
Ya
K<1
Tidak
CETAK
S(K)
K=K-1
19
Bilangan Amstrong
Misalkan :
153
= 1 3 + 53 + 33
20
Latihan 2 :
21