Pengembalian C ++ (Dengan Contoh)

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.

Bagaimana rekursi berfungsi dalam pengaturcaraan C ++

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

Bagaimana program rekursi C ++ ini berfungsi

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.

Artikel menarik...