Faktöriyel

Faktöriyel dizisinden seçilmiş elementler (OEIS'de A000142 dizisi); bilimsel notasyonla verilmiş değerler, gösterildiği hassasiyete yuvarlanmıştır.
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×101.000
1000 4.023872601×102.567
3249 6.412337688×1010.000
10000 2.846259681×1035.659
25206 1.205703438×10100.000
100000 2.824229408×10456.573
205023 2.503898932×101.000.004
1000000 8.263931688×105.565.708
10100 109.956570552×10101

Faktöriyel, matematikte, sağına ünlem işareti konulmuş sayıya verilen isim, daha genel olan Gama Fonksiyonu'nun tam sayılarla sınırlanmış özel bir durumudur. 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.

Fonksiyon

Faktöriyel fonksiyonu verilen pozitif tamsayının kendisinden önceki bütün tamsayı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

Problem çözümünde kullanımı

Örnekler

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.

Kodla çözümü

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

   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

   static double faktoriyelIt(double n) {
       double f = 1;
       for (double i = n; i >= 1; --i) {
           f *= i; 
       }
       return f;
   }

Kaynaklar

    Ayrıca bakınız

    This article is issued from Vikipedi - version of the 11/18/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.