Python’da faktoriyel hesaplama pythonda if yapısını ve for döngüsünü öğrenirken yapılacak en iyi örneklerden biridir. Önce teorik olarak açıklyıp daha sonra örneği de aşağıda paylaşacağım.
- Kendimize bir değişken yaratıyoruz ve buna bir sayı değeri atıyoruz. Eğer değişkeni kullanıcının atamasını istiyorsak int(input()) yapısı kullanabiliriz.
- Faktoriyelin başlangıç değerine 1 atıyoruz. Çünkü for döngüsü için bir başlangıç değeri giriyoruz. Bu döngü çarpım ile yapıldığı için çarpma işleminde etkisiz eleman olan 1 ile başlıyoruz. Toplama olsaydı 0 ile başlayabilirdik.
- Negatif sayıların faktoriyeli hesaplanamaz. Bu yüzden 0 dan küçük ise bir print ile bu işlemin yapılamayacağını kullanıcıya söylüyoruz.
- 0 sayısının faktöriyeli hesaplanabilir ancak normal hesaplama yöntemi ile bulunamaz. 0 sayısının faktöriyeli 1 dir. Bunu da if içerisinde yazıyoruz.
- For döngüsü ile kendinden sonra gelen sayı ile çarpıyoruz.
- Çıkan sayıyı ekrana yazdırıyoruz.
num = 7
#num = int(input("Enter a number: "))
factorial = 1
if num < 0:
print("Negatif sayıların faktoriyeli hesaplanamaz")
elif num == 0:
print("0 sayısının faktoriyeli 1 dir")
else:
for i in range(1,num + 1):
factorial = factorial*i
print(num,"sayısının faktoriyeli",factorial)