Rekursif
mempunyai arti suatu proses yang bisa memanggil dirinya sendiri. Dalam sebuah
rekursi sebenarnya tekandung pengertian sebuah prosedur atau fungsi.
Perbedaannya adalah bahwa rekursi bisa memanggil dirinya sendiri, kalau
prosedur atau fungsi harus diipanggil melalui pemanggil prosedur atau fungsi.
Untuk
memulai bahasan rekursi, kita membahas sebuah masalah sederhana yang
kemungkinan kita tidak berpikir untuk menyelesaikan dengan cara rekursif. Yaitu
permasalahan faktorial, yang mana kita menghitung hasil faktorial dari sebuah
bilangan, yaitu n. Faktorial dari n (ditulis n!), adalah hasil kali dari
bilangan tersebut dengan bilangan di bawahnya, di bawahnya hingga bilangan 1.
Sebagai contoh, 4! = (4)(3)(2)(1).
contoh :
3!=3.(3-1)!
3!=3.2! --> Faktorial n-1
3!=3.2.(2-1)!
3!=3.2.1! --> Faktorial n-2
3!=3.2.1
program C++ rekursif untuk menghitung faktorial dari
suatu bilangan :
#include <iostream>
#include <conio.h>
using namespace std;
int faktorial (int bil)
{
if(bil==1)
return 1;
else
//fungsi
rekursif
return bil*faktorial(bil-1);
}
int main ()
{
int n;
cout<<"\tFungsi
Rekursif - FAKTORIAL"<<endl;
cout<<"\t==========================="<<endl;
cout<<"\nMasukkan
nilai n = ";
cin>>n;
cout<<"\nFaktorial
"<<n<<"!= "<<faktorial(n)<<endl;
_getche();
return EXIT_SUCCESS;
}
Tidak ada komentar:
Posting Komentar