Dalam program ini, Anda akan belajar mencari dan menampilkan faktorial sebuah angka menggunakan fungsi rekursif di Java.
Untuk memahami contoh ini, Anda harus memiliki pengetahuan tentang topik pemrograman Java berikut:
- Metode Java
- Rekursi Java
Faktorial dari bilangan positif n diberikan oleh:
faktorial dari n (n!) = 1 * 2 * 3 * 4 *… * n
Faktorial bilangan negatif tidak ada. Dan faktorial 0 adalah 1.
Anda akan belajar mencari faktorial sebuah bilangan menggunakan rekursi dalam contoh ini. Kunjungi halaman ini untuk mempelajari, bagaimana Anda dapat menemukan faktorial sebuah bilangan menggunakan loop.
Contoh: Faktorial Bilangan Menggunakan Rekursi
public class Factorial ( public static void main(String() args) ( int num = 6; long factorial = multiplyNumbers(num); System.out.println("Factorial of " + num + " = " + factorial); ) public static long multiplyNumbers(int num) ( if (num>= 1) return num * multiplyNumbers(num - 1); else return 1; ) )
Keluaran
Faktorial 6 = 720
Awalnya, multiplyNumbers()
dipanggil dari main()
fungsi dengan 6 diteruskan sebagai argumen.
Karena 6 lebih besar dari atau sama dengan 1, 6 dikalikan dengan hasil multiplyNumbers()
dimana 5 (num -1) dilewatkan. Karena dipanggil dari fungsi yang sama, ini adalah panggilan rekursif.
Dalam setiap panggilan rekursif, nilai argumen num dikurangi 1 hingga jumlah mencapai kurang dari 1.
Jika nilai num kurang dari 1, tidak ada panggilan rekursif.
Dan setiap panggilan rekursif kembali memberi kita:
6 * 5 * 4 * 3 * 2 * 1 * 1 (untuk 0) = 720