Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

- PERTEMUAN 8 - REKURSI LOGIKA DAN ALGORITMA. Pengantar Rekursi adalah proses dimana sebuah subprogram yang memanggil dirinya sendiri. Rekursif  menyelesaikan.

Presentasi serupa


Presentasi berjudul: "- PERTEMUAN 8 - REKURSI LOGIKA DAN ALGORITMA. Pengantar Rekursi adalah proses dimana sebuah subprogram yang memanggil dirinya sendiri. Rekursif  menyelesaikan."— Transcript presentasi:

1 - PERTEMUAN 8 - REKURSI LOGIKA DAN ALGORITMA

2 Pengantar Rekursi adalah proses dimana sebuah subprogram yang memanggil dirinya sendiri. Rekursif  menyelesaikan masalah dengan menggunakan konsep tumpukan. Adapun syarat suatu subprogram dapat disebut subprogram rekursi : Subprogram itu memanggil dirinya sendiri. Terdapat anchor (kondisi dimana fungsi rekursi selesai) untuk menghentikan proses rekursi. Namun, penggunaan rekursi tidak dianjurkan, karena lebih banyak menggunakan sumber daya memori saat program dijalankan.

3 Contoh Rekursi (1) Faktorial Fungsi faktorial dari bilangan bulat positif n didefinisikan sbb : n! = n*(n-1)!, jika n>1 n! = 1, jika n = 0, n=1

4 Fungsi Menghitung Faktorial Function Faktorial (input integer)  integer Deklarasi {tidak ada} Deskripsi If (n = 0) or (n = 1) then Return(1) Else Return(n*Faktorial(n-1)) Endif

5 Kondisi tumpukan rekursi faktorial Di dalam memori komputer saat rekursi ini dieksekusi akan membentuk stack (tumpukan). NFaktorial N=11 N=22 * Faktorial(1) N=33 * Faktorial(2) N=44 * Faktorial(3) N=55 * Faktorial(4)

6 Bagan pemanggilan modul rekursi Instruksi 1 Instruksi 2 Call Modul 1 End Modul 1 Instruksi 1 Instruksi 2 Call Modul 1 End Modul 1 Instruksi 1 Instruksi 2 Call Modul 1 End Modul 1 Instruksi 1 Instruksi 2 Call Modul 1 End Modul 1 Instruksi 1 Instruksi 2 ……… End Modul 1 Modul 1 N=5 N=4N=3N=2N=1

7 Contoh Rekursif(2) Procedure rekursi (input n:integer) Deklarasi {tidak ada} Deskripsi Write(n) If(n<5) then Rekursi(n+1) End if

8 Contoh Rekursif(3) Procedure rekursi (input n:integer) Deklarasi {tidak ada} Deskripsi If(n<5) then Write(n) Rekursi(n+1) End if

9 Contoh Rekursif (4) Procedure rekursi (input n:integer) Deklarasi {tidak ada} Deskripsi If(n<5) then Rekursi(n+1) End if Write(n)

10 LATIHAN 8 Dengan menggunakan rekursif, tampilkan deret fibonacci sebagai berikut : Input = 10 Output = 1, 1, 2, 3, 5, 8, 13, 21, 34, 55 Dengan menggunakan rekursif, tampilkan deret fibonacci sebagai berikut : Input = 10 Output = 55, 34, 21, 13, 8, 5, 3, 2, 1, 1


Download ppt "- PERTEMUAN 8 - REKURSI LOGIKA DAN ALGORITMA. Pengantar Rekursi adalah proses dimana sebuah subprogram yang memanggil dirinya sendiri. Rekursif  menyelesaikan."

Presentasi serupa


Iklan oleh Google