Program ini mengambil bilangan bulat positif dari pengguna dan menghitung faktorial dari angka itu. Misalkan, pengguna memasukkan 6 lalu,

Factorial will be equal to 1*2*3*4*5*6 = 720

Anda akan belajar menemukan faktorial suatu angka menggunakan fungsi rekursif dalam contoh ini.

Kunjungi halaman ini untuk mempelajari, bagaimana Anda dapat menggunakan loop untuk menghitung faktorial.

Contoh: Hitung Faktorial Menggunakan Rekursi

#include
using namespace std;

int factorial(int n);

int main()
{
    int n;

    cout << "Enter a positive integer: ";
    cin >> n;

    cout << "Factorial of " << n << " = " << factorial(n);

    return 0;
}

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

Keluaran

Enter an positive integer: 6
Factorial of 6 = 720

Dalam program di atas, anggaplah pengguna memasukkan angka 6. Angka tersebut diteruskan ke factorial() fungsi.

Dalam fungsi ini, 6 dikalikan dengan faktorial (6 – 1 = 5). Untuk ini, angka 5 diteruskan lagi ke factorial() fungsi.

Demikian juga pada iterasi berikutnya, 5 dikalikan dengan faktorial (5 – 1 = 4). Dan, 4 diteruskan ke factorial() fungsi.

Ini berlanjut sampai nilainya mencapai 1 dan fungsi mengembalikan 1.

Sekarang, setiap fungsi mengembalikan nilai kembali untuk menghitung 1 * 2 * 3 * 4 * 5 * 6 = 720, yang dikembalikan ke main() fungsi.