Faktöriyel
Faktöriyel, matematikte, sağına ünlem işareti konulmuş sayıya verilen isim, daha genel olan Gama fonksiyonunun tam sayılarla sınırlanmış özel bir durumudur. Bu sınırlamanın nedeni gerçek veya reel sayılarda bu hesabın imkânsız oluşudur. 1'den başlayarak belirli bir sayma sayısına kadar olan sayıların çarpımına o sayının faktöriyeli denir. Basit bir şekilde faktöriyel, n tane ayrık elemanın kaç farklı şekilde sıralanabileceğidir.
n | n! |
---|---|
0 | 1 |
1 | 1 |
2 | 2 |
3 | 6 |
4 | 24 |
5 | 120 |
6 | 720 |
7 | 5040 |
8 | 40320 |
9 | 362880 |
10 | 3628800 |
11 | 39916800 |
12 | 479001600 |
13 | 6227020800 |
14 | 87178291200 |
15 | 1307674368000 |
16 | 20922789888000 |
17 | 355687428096000 |
18 | 6402373705728000 |
19 | 121645100408832000 |
20 | 2432902008176640000 |
25 | 1,551121004×1025 |
50 | 3,041409320×1064 |
70 | 1,197857167×10100 |
100 | 9,332621544×10157 |
450 | 1,733368733×101000 |
1000 | 4,023872601×102567 |
3249 | 6,412337688×1010000 |
10000 | 2,846259681×1035659 |
25206 | 1,205703438×10100000 |
100000 | 2,824229408×10456573 |
205023 | 2,503898932×101000004 |
1000000 | 8,263931688×105565708 |
10100 | 109,956570552×10101 |
Fonksiyon
[değiştir | kaynağı değiştir]Faktöriyel fonksiyonu verilen pozitif tam sayının kendisinden önceki bütün tam sayılarla 1'e inilinceye kadar çarpılması sonucunda elde edilen çarpımı gösterir.
Örnek olarak şunları gösterebiliriz:
Sıfır pozitif bir sayı olmamasına rağmen faktöriyeli tanım olarak bire eşittir: 0!=1
Çünkü 0 ayrık eleman hiçbir şekilde sıralanamaz yani sonuç tektir.
Problem çözümünde kullanımı
[değiştir | kaynağı değiştir]Örnekler
[değiştir | kaynağı değiştir]Sual: Ali'nin üç çeşit gömleği, dört çeşit pantolonu, iki çeşit ayakkabısı vardır. Bir gömlek, bir pantolon ve bir ayakkabıyı kaç farklı şekilde giyer?
Cevap: farklı şekilde giyer.
Kod ile çözümü
[değiştir | kaynağı değiştir]Programlama dillerinde de sıklıkla karşılaşılan bir kavram olan faktöriyel, özyineli (kendi kendini çağıran) ya da tekrarlamalı (iteratif) fonksiyonlarla hesaplanabilir.
Java programlama dilinde yazılmış özyineli ve tekrarlamalı fonksiyonlara birer örnek verecek olursak:
// n! hesabi - Ozyineli
[değiştir | kaynağı değiştir]Public Function Faktoriyel_Oz(n) { IF n <= 1 Then Faktoriyel_Oz = 1 Else Faktoriyel_Oz = n*Faktoriyel_Oz(n - 1) End IF End Function
// n! hesabi - tekrarlamali
[değiştir | kaynağı değiştir]static double faktoriyelIt(double n) { double f = 1; for (double i = n; i >= 1; --i) { f *= i; } return f; }