Faktoriyalın hesablanması

   Bu dərsimizdə faktoriyalı hesablayan funksiya tərtib edib onu ana proqramımız içərisində istifadə edəcəyik.

   Riyaziyyatdan da bildiyiniz kimi n ədədinin faktorialı 1-dən n-ə qədər (daxil olmaqla) natural ədədlərin hasilinə bərabərdir. Məsələn, 5!=5*4*3*2*1. Və o da məlumdur ki, 1!=1 və 0!=1. Buradan belə bir məntiq yürütmək olur ki, n! hesablamaq üçün n*(n-1)! hesablamalıyıq, yəni 5!=5*4!. Belə olan halda 4! üçün 4*3!, 3! üçün 3*2!, 2! hesablamaq üçün də 2*1! hesablanmalıdır. 1! isə 1-ə bərabər olduğuna görə rekursiya burada bitmiş olur. Yəgin anladınız ki, biz burada rekursiv funksiya təyin edəcəyəcik. Xatırlatmış olaq ki, proqramlaşdırmada funksiyaların özü özünü çağırmasına rekursiya, bu cür funksiyalara da rekursiv funksiyalar deyilir.

   Aşağıdakı proqram kodunda öncə fakt() adlı rekursiv funksiya təyin olunur və sonra da proqram daxilində çağrılır:

def fakt(n):
    if n <= 1:
        return 1
    else:
        return n*fakt(n-1)

n = int(input())
print("{0}!={1}".format(n,fakt(n)))

    Proqramı çalışdırıb icra etdiyinizdə istədiyiniz ədədin faktoriyalını hesablayacaq.