Rabu, 06 April 2011

KASUS 5.5 MINGGU KE-5

Di bawah ini adalah program fungsi faktorial secara rekursif untuk
mencari n!...

Programnya adalah sebagai berikut:

#include<iostream>
float factorial(float n)
{

if(n>1)
return n*factorial(n-1);
else
return 1;
}
main()
{

float fac,n;
cout<<"\t\tMENCARI FAKTORIAL\n";
cout<<"input angka = ";cin>>n;
cout<<"\nMasukkan sebuah angka:\n ";
cin>>n;
cout<<"Faktorialdari "<<n<<" adalah "<<factorial(n)<<endl;
return 0;
}

Program diatas hanya terdiri dari 2 fungsi:
- factorial(float n)
- main()

Program di atas menggunakan user input, yaitu nilai-nilai di inputkan sendiri oleh user.
Pada baris ke empat (n > 1) statement fungsi, diperiksa apakah n lebih besar dari 1. Jika ya, maka fungsi factorial akan memangil dirinya sendiri dengan argumen n-1. Hal ini akan dilakukan secara terus menerus selama n lebih besar dari 1. Setelah n mencapai 1, maka kondisi if(n>1) ini bernilai salah dan fungsi factorial memberikan return value 1.

Tidak ada komentar:

Posting Komentar