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