Faktöriyel Hesaplama
Faktöriyel (https://en.wikipedia.org/wiki/Factorial) bir sayının "bir önceki"
ile "bir önceki"
'nin vs. vs. şeklinde 1
olana kadar çarpılmasıdır. n
in faktöriyeli n!
şeklinde gösterilir.
Faktöriyelin tanımı aşağıdaki gibidir:
n! = n * (n - 1) * (n - 2) * ...*1
Farklı n
değerlerinin faktöriyelleri şu şekildedir:
1! = 1
2! = 2 * 1 = 2
3! = 3 * 2 * 1 = 6
4! = 4 * 3 * 2 * 1 = 24
5! = 5 * 4 * 3 * 2 * 1 = 120
Göreviniz faktoriyel(n)
fonksiyonunu özçağrı kullanarak hesaplamak.
alert( faktoriyel(5) ); // 120
Not: n!
, n * (n-1)!
şeklinde yazılabilir. Örneğin: 3! = 3*2! = 3*2*1! = 6
Tanım olarak n!
faktöriyel n * (n-1)!
şeklinde çalışır.
Diğer bir deyişle faktoriyel(n)
n
in factorial(n-1)
ile çarpılmasıdır. Sonrasında n-1
1
olana kadar basamak basamak azalır.
function faktoriyel(n) {
return (n != 1) ? n * faktoriyel(n - 1) : 1;
}
alert( faktoriyel(5) ); // 120
Özçağrı’nın tabanı 1
’dir. 0
’da yapılabilir, çok önemli değildir, fakat 1 özçağrı daha yapmak gerekir.
function faktoriyel(n) {
return n ? n * faktoriyel(n - 1) : 1;
}
alert( faktoriyel(5) ); // 120