kodbankasi http://kodbankasi.org/kodbankasi

Fonksiyon ile fibonacci, faktöriyel hesaplama

Önceki yazımda fonksiyonlardan bahsetmiştim. O konu biraz daha giriş aşamasında kalıyordu. Şimdi bir nebze de olsa konuyu zorlaştıracağız. Faktöriyel ve fibonacci hesaplama fonksiyonsuz da yapılabilse de fonksiyonları kullanmanız her zaman tavsiye edilir. Çünkü kodlarınız fonksiyonlarla daha düzenli ve akıcı olur. Gereksiz kod kullanmazsınız ve bir fonksiyonu oluşturduktan sonra istediğiniz yerde o fonksiyonu kullanabilirsiniz.

Faktoriyel Hesaplama

Yazacağımız küçük bir program ile istediğimiz herhangi bir sayının faktöriyelini alabiliriz.

def faktoriyel(n):
sonuc=n
for i in range(1,n):
sonuc*=i
return sonuc
print (faktoriyel(10))

Yukarıdaki fonksiyon 10 sayısının faktöriyelini almaktadır. n değeri fonksiyondan return ile dönen parametredir. for döngüsü yardımı ile de 10’dan geri doğru sayı çarpım işlemleri yapılmaktadır. Çıktısı şu şekilde :

python faktöriyel


Fibonacci Hesaplama

def fibonacci(n):
if n==0 or n==1:
return n
else:
return fibonacci (n-1)+fibonacci(n-2)
numara=eval(input("sayı giriniz : "))
if numara > 0:
sonuc = fibonacci(numara)
print ("fibonacci (%d) = %d" %(numara,sonuc))
else:
print ("negatif sayı girdiniz")
print ("--------------------------------------")
 
 

fibonacci metodunda sayımız 0 veya 1 olamayacağı için if ile eliyoruz ve diziye uyan kural ile sayılarımızı toplatıyoruz.  Ekran çıktımız şu şekilde :

python fibonacci

Genellikle bu yaptığımız örnekler üniversite bilgisayar bölümü okuyan öğrencilerin vize sınavlarında bol bol karşılarına çıkacak soru tiplerindendir. O yüzden mantığını kavramak çok önemlidir. Bir sonraki yazıda python fonksiyonlar konusuna devam edeceğim.

Bir önceki yazımız olan Android Spinner kullanımı başlıklı yazımızı da inceleyebilirsiniz.

Bir yorum

  1. Finallerde çıkan sorulardan biriydi. İyiki okumuşum bu yazıyı :)

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak.

Bu yazı da ilginizi çekebilir !

Modem Wifi şifresi Değiştirme

Ev veya işyerlerine yeni bağlatılan internet hatlarına genel olarak karmaşık bir şifre veya oldukça basit ...