Merhaba arkadaşlar, bu yazımızda kendi kendini çağıran yani özyineli fonksiyonlara bakacağız.
Örnek üzerinden anlatımı daha anlaşılır. Örneğin matematik de faktöriyeli bilirsiniz. Sürekli hesaplanmak istenen değerin bir önceki sonucu ile kendisinin çarpımı olan bu faktöriyel özyineli fonksiyonlar için güzel bir örnektir.
5! =5* 4 * 3 * 2 * 1 = 120
Yukarıdaki gibi faktöriyel 1 e gelene kadar sürekli n*(n-1) şeklinde gidiyor. Bunu fonksiyonun kendisine uyarlayalım.
static int faktoriyel(int sayi) { if (sayi== 1) { return 1; // 1 e geldiğinde geriye 1 döndür.. } return sayi * faktoriyel(sayi- 1); }
Yukarıdaki örnekte if ifadesi fonksiyonun kırım noktası olarak nitelendirilebilir. Burada 1! değeri 1 olduğu için if içerisinden 1 değeri döndürülür.
faktöriyel fonksiyonumuzu Main içerisinden çağıralım.
static void Main(string[] args) { Console.WriteLine(faktoriyel(6)); //Çıktı 720 }
Umarım faydalı olmuştur.