Python'da Faktöriyel Fonksiyonu Oluşturma Mantığını Anlamadım

Tanrısal Su

Kilopat
Katılım
2 Ocak 2015
Mesajlar
107
İyi akşamlar, BTK Akademi'den Python derslerini izliyorum ama anlamadığım bir yeri sormak istedim. Burada döngüyü nasıl oluşturduk orayı anlamadım. Sadece cevabın 5*4 olmasını düşünüyordum. Ama 5*4*3*2 döngüsünü nasıl oluşturduk bilen birisi cevaplarsa çok sevinirim.
 

Dosya Ekleri

  • Adsız.png
    Adsız.png
    13,7 KB · Görüntüleme: 280
factorial(5) çalıştırdığın zaman 5 * inner_factorial(4) return ediyorsun. Bu durumda inner_factorial(4) = 4 * inner_factorial(3) olduğundan da 5 * 4 * inner_factorial(3) oluyor bu şekilde 1'e kadar gidiyor. Değer 1 olunca fonksiyon 1 return ediyor. En son elinde 5*4*3*2*1 kalıyor.
 
5 * 4 değil de 5 * factorial(4) olduğu için aslında orada fonksiyonu tekrar çağırıyorsun. Matematikteki gibi düşünürsen 5! = 5 * 4! işlemini yapmış oluyorsun. Devam ettirirsen 5! = 5 * 4 * 3! , 5! = 5 * 4 * 3 * 2! şeklinde açarak işlem yapıyor fonksiyonun. En son 5! = 5 * 4 * 3 * 2 * 1! oluyor. Fonksiyonunda number = 1 olduğu durumda 1 döndürdüğün için en sondaki 1! değeri 1'e eşit oluyor. Bu durumda da 5! = 5 * 4 * 3 * 2 * 1 sonuca ulaşıyorsun. Birkaç kaynaktan daha özyineleme çalışmanı öneririm.
 
5 * 4 değil de 5 * factorial(4) olduğu için aslında orada fonksiyonu tekrar çağırıyorsun. Matematikteki gibi düşünürsen 5! = 5 * 4! işlemini yapmış oluyorsun. Devam ettirirsen 5! = 5 * 4 * 3! , 5! = 5 * 4 * 3 * 2! şeklinde açarak işlem yapıyor fonksiyonun. En son 5! = 5 * 4 * 3 * 2 * 1! oluyor. Fonksiyonunda number = 1 olduğu durumda 1 döndürdüğün için en sondaki 1! değeri 1'e eşit oluyor. Bu durumda da 5! = 5 * 4 * 3 * 2 * 1 sonuca ulaşıyorsun. Birkaç kaynaktan daha özyineleme çalışmanı öneririm.
Çok teşekkür ederim çok iyi bir anlatım olmuş.
 
Uyarı! Bu konu 5 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Technopat Haberler

Geri
Yukarı