Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Apakah Recursion itu ? Dr. Anto Satriyo Nugroho, M.Eng Web:

Presentasi serupa


Presentasi berjudul: "Apakah Recursion itu ? Dr. Anto Satriyo Nugroho, M.Eng Web:"— Transcript presentasi:

1 Apakah Recursion itu ? Dr. Anto Satriyo Nugroho, M.Eng Web:

2 Apakah Recursion itu ? Perulangan proses pada sebuah fungsi, yang di dalamnya memanggil fungsi itu sendiri. Keuntungan: menyederhanakan sebuah proses yang kompleks Kapan dipakai ? Recursion dipakai pada sebuah struktur data yang apabila diambil sebagian daripadanya, akan diperoleh struktur data yang sama Bahasa pemrograman yang memiliki kemampuan implementasi recursion: C,C++ Bahasa pemrograman yang tidak memiliki kemampuan tsb.: Fortran Argumen fungsi, maupun variabel yang dideklarasikan pada fungsi tersebut tidak memiliki address yang fixed. Alokasi memory baru dilakukan saat fungsi itu dipanggil. Contoh populer: –Perhitungan factorial –Greatest Common Divisor/GCD (=FPB Faktor Persekutuan Terbesar) –Deret Fibonacci

3 ① Perhitungan factorial int factorial(int n) { if(n==0) return 1; else return(n*factorial(n-1)); }

4 Perhitungan Factorial factorial(n) factorial(n-1) = n  factorial(n-1) = (n-1)  factorial(n-2) factorial(n-2) = (n-2)  factorial(n-3) factorial(1) = 1  factorial(0) 1 if(n==0) return 1; factorial(n) = n  (n-1)  (n-2)  (n-3)  …  1 …

5 ② GCD antara x dan y int gcd(int x,int y) { if(y==0) return(x); else return gcd(y,x%y); } GCD : Greatest Common Divisor Cara ini disebut sebagai Euclidean Algorithm yang dikenal sebagai salah satu algoritma tertua 300 B.C. (7 th book, Proposition 2 )

6 gcd(75,54) = gcd(54,21) = gcd(21,12) = gcd(12, 9) = gcd( 9, 3) = gcd( 3, 0) gcd(75,54)= 3 21=75%54 12=54%21 9=21%12 3=12%9 0=9%3

7 Deret Fibonacci 0,1,1,2,3,5,8,13,21,34,… F(n)=F(n-1)+F(n-2) F(1)=0 F(2)=1 Tuliskan deret Fibonacci di atas memakai recursion !


Download ppt "Apakah Recursion itu ? Dr. Anto Satriyo Nugroho, M.Eng Web:"

Presentasi serupa


Iklan oleh Google