Recursion (Özyineleme)
Fonksiyon aynı fonksiyon içinde çağrıldığında, C++ ‘da özyineleme olarak bilinir. Aynı fonksiyon çağıran fonksiyon, özyinelemeli fonksiyon olarak bilinir.
Kendini çağıran ve fonksiyon çağrısından sonra herhangi bir görev gerçekleştirmeyen fonksiyon kuyruk özyineleme denir. Kuyruk özyinelemesinde, genellikle return fonksiyon ile aynı fonksiyon çağırırız.
Syntax (Sözdizimi)
void ozyineleme() { ozyineleme (); } int main() { ozyineleme (); }
Örnek:
#include <iostream> using namespace std; int faktoriyel(int x) { if(x <=1) { return 1; } else { return x*faktoriyel(x-1); } } int main() { int sonuc, sayi; cout << "Faktoriyel için sayı giriniz:"; cin >> sayi; sonuc = faktoriyel(sayi); cout << sayi << "! : " << sonuc << endl; return 0; }
Giriş:
Faktoriyel için sayı giriniz:5
Çıktı:
5! : 120