Algoritma Rekursif

Tuesday, November 29, 2016


1.Algoritma Fibbonaci

Function Fibo(N : integer):integer;
{I.S. : banyaknya suku (N) sudah terdefinisi}
{F.S. : menghasilkan fungsi rekursif suku ke-N dari fibonacci}
Algoritma
     if(n=1) or (n=2) then
       fibo := 1
     else
       fibo := fibo(N-2) + fibo(n-1);
     endif
endfunction
Tn = (n+1) + (n+1)

2. Algoritma Mencari Pangkat

function Pangkat(a,b:integer):integer;
{I.S. : bilangan yang akan dipangkatkan(a) dan jumlah pangkat(b) sudah terdefinisi}
{F.S. : menghasilkan fungsi rekursif a dan b dari hasil pangkat}
Algoritma
     if(b=0) then
       x := 1
     else
       if(b>0) then
         begin
           x := 1;
             for i := 2 to b do
             x := x*a;
         endif
endfunction

3. Algoritma Faktorial

Function Faktorial (input n : integer) integer
Algoritma
                If n=0 then
                   Return 1
                Else
                  Return(n*faktorial(n-1))
                Endif
endfunction

T(n) = T(n-1)+1 untuk n>0

T(n) = T(n-1)+1
     = T(n-2)+1+1 =T(n-2)+2
     = T(n-3)+1+2 =T(n-3)+3

T(n) = T(n-1)+1 = ... = T(n-i)+i = ... = T(n-n)+n = n

No comments:

Post a Comment