60 likes | 297 Views
SUB-PROSES. Rekursi. Pengantar. Manfaat. Parameter. Prosedur. Fungsi. Rekursi adalah kondisi dimana di dalam sebuah sub-proses terdapat instruksi untuk memanggil sub-proses lain yang serupa dengan dirinya.
E N D
SUB-PROSES Rekursi Pengantar Manfaat Parameter Prosedur Fungsi • Rekursi adalah kondisi dimana di dalam sebuah sub-proses terdapat instruksi untuk memanggil sub-proses lain yang serupa dengan dirinya. • Setiap kali terjadi proses yang rekursif, sejumlah memori akan dipakai untuk mengidentifikasi sub-proses yang baru dan lokasi dari sub-proses lama yang ditinggalkan. • Komputer menyimpan address yang ditinggalkan di dalam memory yang disebut STACK. Penggunaan STACK memastikan alur proses berjalan dengan benar. • Karena di dalam sub-proses terjadi pemanggilan sub-proses lain maka STACK yang digunakan untuk menyimpan address saat ini semakin penuh. #8 STIKOM
SUB-PROSES Rekursi Pengantar Manfaat Parameter Prosedur Fungsi • Dalam sebuah sub-proses rekursif HARUS terdapat instruksi untuk menghentikan proses rekursif pada suatu nilai tertentu. • Besar-kecilnya ukuran STACK yang dipakai ditentukan oleh beberapa faktor: • Tipe dari fungsi. • Jumlah variabel lokal di dalam fungsi. • Kompleksitas instruksi yang ada di dalam fungsi. • Pengendalian terhadap alur proses rekursif sepenuhnya menjadi tanggung jawab programmer. • Dalam banyak hal, penggunaan fungsi rekursif lebih efisien dibandingkan dengan looping. Kedua model perulangan ini bisa saling dipertukarkan jika memungkinkan. #8 STIKOM
CALL cetak(3) SUB cetak(n) CALL cetak(n-1) BEGIN BENAR SALAH n > 0 PRINT “Halo” END RETURN SUB-PROSES Rekursi Pengantar Manfaat Parameter Prosedur Fungsi Contoh #1 #8 STIKOM
hasil = a * pangkat(a,b-1) FUNCTION pangkat(a,b) hasil = 0 BEGIN SALAH BENAR b == 0 PRINT pangkat(2,4) hasil = 1 END RETURN hasil SUB-PROSES Rekursi Pengantar Manfaat Parameter Prosedur Fungsi Contoh #2 #8 STIKOM
SUB-PROSES Rekursi Pengantar Manfaat Parameter Prosedur Fungsi • Menampilkan deret bilangan: cacah, genap, gasal, fibonacci • Menampilkan pola segitiga: pascal, genap, gasal • Perhitungan statistik: MAX, MIN, AVERAGE, TOTAL • Perhitungan matematika: perkalian, FPB, KPK • Menampilkan pola bintang Latihan #8 STIKOM
End of slide Terima kasih #8 STIKOM