Dalam tutorial ini, kita akan belajar mengenai fungsi rekursif di C ++ dan berfungsi dengan bantuan contoh.
Fungsi yang memanggil dirinya dikenali sebagai fungsi rekursif. Dan, teknik ini dikenali sebagai rekursi.
Berfungsi Recurion di C ++
void recurse() (… recurse();… ) int main() (… recurse();… )
Gambar di bawah menunjukkan bagaimana rekursi berfungsi dengan memanggil dirinya berulang kali.

Kekambuhan berterusan sehingga beberapa syarat dipenuhi.
Untuk mengelakkan pengulangan yang tidak terbatas, jika… pernyataan lain (atau pendekatan serupa) dapat digunakan di mana satu cabang membuat panggilan rekursif dan yang lain tidak.
Contoh 1: Faktorial nombor yang menggunakan pengulangan
// Factorial of n = 1*2*3*… *n #include using namespace std; int factorial(int); int main() ( int n, result; cout <> n; result = factorial(n); cout << "Factorial of " << n << " = " < 1) ( return n * factorial(n - 1); ) else ( return 1; ) )
Pengeluaran
Masukkan nombor bukan negatif: 4 Faktor faktor 4 = 24
Mengendalikan Program Factorial

Seperti yang kita lihat, factorial()
fungsi itu memanggil dirinya sendiri. Namun, pada setiap panggilan, kami telah menurunkan nilai n oleh 1
. Apabila n kurang daripada 1
, factorial()
fungsi akhirnya mengembalikan output.
Kelebihan dan Kekurangan Pengulangan
Berikut adalah kebaikan dan keburukan penggunaan rekursi dalam C ++.
Kelebihan C ++ Recurion
- Ini menjadikan kod kami lebih pendek dan bersih.
- Pengulangan diperlukan dalam masalah mengenai struktur data dan algoritma lanjutan, seperti Grafik dan Pohon Melintasi.
Kekurangan Pengulangan C ++
- Ia memerlukan banyak ruang tumpukan berbanding dengan program berulang.
- Ia menggunakan lebih banyak masa pemproses.
- Lebih sukar untuk debug dibandingkan dengan program berulang yang setara.