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