Program C untuk Menemukan Faktorial Bilangan Menggunakan Rekursi

Dalam contoh ini, Anda akan belajar menemukan faktorial dari bilangan bulat non-negatif yang dimasukkan oleh pengguna menggunakan rekursi.

Untuk memahami contoh ini, Anda harus memiliki pengetahuan tentang topik pemrograman C berikut ini:

  • Fungsi C.
  • C Fungsi yang ditentukan pengguna
  • C Rekursi

Faktorial dari bilangan positif n diberikan oleh:

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

Faktorial bilangan negatif tidak ada. Dan faktorialnya 0adalah 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 dengan menggunakan perulangan.

Faktorial Bilangan Menggunakan Rekursi

#include long int multiplyNumbers(int n); int main() ( int n; printf("Enter a positive integer: "); scanf("%d",&n); printf("Factorial of %d = %ld", n, multiplyNumbers(n)); return 0; ) long int multiplyNumbers(int n) ( if (n>=1) return n*multiplyNumbers(n-1); else return 1; ) 

Keluaran

Masukkan bilangan bulat positif: 6 Faktorial 6 = 720 

Misalkan pengguna memasukkan 6.

Awalnya, multiplyNumbers()dipanggil dari main()dengan 6 diteruskan sebagai argumen.

Kemudian, 5 diteruskan ke multiplyNumbers()dari fungsi yang sama (panggilan rekursif). Dalam setiap panggilan rekursif, nilai argumen n dikurangi 1.

Ketika nilai n kurang dari 1, tidak ada panggilan rekursif dan faktorial akhirnya dikembalikan ke main()fungsi tersebut.

Artikel yang menarik...