REKURSIF

Rekursif adalah sub program yang dapat memanggil dirinya sendiri selama kondisi pemanggilannya masih terpenuhi. Karena sifatnya ini, maka rekursif harus memiliki :

1. kondisi yang menyebabkan pemanggilan dirinya berhenti (disebut kondisi khusus atau special condition)

2. pemanggilan diri sub program (yaitu bila kondisi khusus tidak dipenuhi)

Secara umum bentuk dari sub program rekursif memiliki statemen kondisional ( if – else )  –>
if kondisi khusus tak dipenuhi
then panggil diri-sendiri dengan parameter yang sesuai
else lakukan instruksi yang akan dieksekusi bila kondisi khusus dipenuhi

Sub program rekursif umumnya dipakai untuk permasalahan yang memiliki langkah penyelesaian yang terpola atau langkah-langkah yang teratur.

Contoh perhitungan factorial dengan rekursif :

Fungsi factorial dari bilangan bulat positif n didefinisikan sebagai berikut:

n!= n.(n-1)! , jika n>1

n!= 1          , jika n=0, 1

contoh :

3!= 3. 2!

3!= 3. 2. 1!

3!= 3. 2. 1

3!= 6

jika diubah ke dalam c++ maka

int Faktorial(int n)
 {
     if ((n == 0) || (n == 1 ))
     return (1);
     else
     return (n * Faktorial(n-1));
}

 (n==0) nilai n dicek sama dengan 0 atau 1,

jika ya, maka fungsi mengembalikan nilai 1 (return(1)),

jika tidak, fungsi mengembalikan nilai n * Faktorial (n -1)

disinilah letak proses rekursif itu, perhatikan fungsi factorial ini memanggil dirinya sendiri tetapi dengan parameter (n-1)

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s