Senin, 02 November 2015

program C++ rekursif untuk menghitung faktorial



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