Program Rekursi Matematika Desrit (C++)

 

Contoh penerapan Rekursi adalah pada masalah Faktorial. Faktorial dari bilangan bulat positif n didefinisikan sebagai berikut.
   n! = n.(n-1)!            Untuk n > 1 
   n! = 1                       Untuk n = 0 atau n = 1 
Simplenya seperti ini :
  • Rekursi dari 4 adalah 24 dengan rumus 1*2*3*4=24
  • Rekursi dari 5 adalah 120 dengan rumus 1*2*3*4*5=120

Namun apabila di program C++ seperti ini :

  • Rekursi dari 5 adalah 120 dengan proses

5*4=20
20*3=60
60*2=120
120*1=120
end

  • Rekursi dari 4 adalah 24 dengan proses

4*3=12
12*2=24
24*1=24
end

 

programnya :

#include<iostream>
#include<cstdlib>
#include<windows.h>
#include<conio.h>
using namespace std;

float faktorial(long num);

int main()
{
int n;

cout<<“Masukkan faktorial yang akan dicari : “;cin>>n;
cout<<endl;

cout<<n<<” Faktorial = “<<faktorial(n)<<endl;
}
float faktorial(long num)
{
if ((num==0) || (num==1))
return 1;
else
return (num*faktorial(num-1));
}