Faktorial sebuah bilangan adalah hasil kali dari semua bilangan asal 1 ke nomor itu. Sebagai contoh,

faktorial dari 5 adalah sama dengan 1 * 2 * 3 * 4 * 5 = 120.

Faktorial dari bilangan positif n diberikan oleh:

factorial of n (n!) = 1 * 2 * 3 * 4.....n

Faktorial dari bilangan negatif tidak ada dan faktorial dari 0 aku s 1.


Contoh: Temukan Faktorial Menggunakan Rekursi

// program to find the factorial of a number
function factorial(x) {

    // if number is 0
    if (x == 0) {
        return 1;
    }

    // if number is positive
    else {
        return x * factorial(x - 1);
    }
}

// take input from the user
const num = prompt('Enter a positive number: ');

// calling factorial() if num is positive
if (num >= 0) {
    const result = factorial(num);
    console.log(`The factorial of ${num} is ${result}`);
}
else {
    console.log('Enter a positive number.');
}

Keluaran

Enter a positive number: 4
The factorial of 4 is 24

Dalam program di atas, pengguna diminta untuk memasukkan nomor.

Ketika pengguna memasukkan angka negatif, sebuah pesan Masukkan bilangan positif. ditampilkan.

Ketika pengguna memasukkan angka positif atau 0, fungsinya factorial(num) dipanggil.

  • Jika pengguna memasukkan nomor tersebut 0, program akan kembali 1.
  • Jika pengguna memasukkan angka lebih besar dari 0, program akan memanggil dirinya sendiri secara rekursif dengan mengurangi jumlahnya.
  • Proses ini berlanjut hingga bilangan menjadi 1. Kemudian ketika angkanya mencapai 0, 1 dikembalikan.

Sini,

factorial(4) returns 4 * factorial(3)
factorial(3) returns 4 * 3 * factorial(2)
factorial(2) returns 4 * 3 * 2 * factorial(1)
factorial(1) returns 4 * 3 * 2 * 1 * factorial(0)
factorial(0) returns 4 * 3 * 2 * 1 * 1