İçeriğe geç
ShiftDelete.Net
Haber ara/ SDN'ye SorGiriş
Haber Akışı SDNTV İnceleme Forum Yapay Zeka Akıllı Telefon Elektrikli Otomobil Oyun ShiftDelete.Net Global Teknoloji Haberleri Mobil Otomobil Donanım Savunma Bilim Sosyal Medya İnternet Giyilebilir Teknoloji Rehber Ürünler Son dakika Yazarlar
  1. Ana sayfa
  2. Topluluk
  3. Programlama
  4. Programlama Dilleri
Programlama Dilleri

Fibonacci Dizisi Algoritması

avaab19.06.20117 cevap14.233 görüntüleme
2011'den beri7 mesaj
#1
Fibonacci dizisi ile ilgili bir algoritma gördüm bir kitapda onu anlamaya çalışıyorum.Kafam durmuş durumda başım da ağrıyor zaten çözemedim vallahi yardımcı olur musunuz ?

Algoritma :

Başla

X=1
Y=1

Yaz X,Y

YENİ Z=X+Y

S=S+1

YAZ Z

X=Y

Y=Z

S=98 Mİ ?

GİT YENİ

DUR
Cevaplar
2007'den beri99 mesaj
#2
fibonacci dizisinin kuralı şudur fn=fn-1+fn-2 dir yani başlangıcı 1 ve 1 kabul edilir ve 3 sayı şu şekilde bulunur 1+1=2 yeni sıralama 1 1 2 dir 4. sayı ise 1+2=3 yani 1 1 2 3 diye gider. 1 1 2 3 5 8 13 21 34 55 89 diye gider 12 sayı 144 dür.
2009'den beri1.405 mesaj
#3
il başta x ile y yi yani 2 tane 1 i yazıyor. 2 eleman yazıldığı için döngü içinde s 0 dan başlatılıyor 98 e gelince çıkılıyor. Yani 2 + 98 , 100 tane sayı yazıyor ekrana. X ile Y yi topluyor Z ye atıyor. z yi ekrana yazınca yeni son iki elemanımız yani Y ile Z değerli Y => X e Z =>Y ye kaydırılıyor. Bu sayede X ile Y de her döngü sonunda son hesaplanan iki fib değeri tutulmuş oluyor.
avaab Konuyu açan
2011'den beri7 mesaj
#4
Evet evet şimdi kafam yerine gelmeye başladı kaydırmayı çözememiştim hallettim onuda teşekkürler arkadaşlar..
2009'den beri1.405 mesaj
#5
Eksiklik: S in ilk değeri verilmemiş 0 olmalı. Buradaki s sadece kaçıncı fibonaccide olduğunu belirtiyor ama fib(3)=2 iken burada s=3 iken ekrana 5 yazıyor.

---------- Post added at 14:04 ---------- Previous post was at 14:03 ----------

Hobi olarak mı program yazmaya çalışıyorsun?
avaab Konuyu açan
2011'den beri7 mesaj
#6
Kısmen hobi olarak biraz da okuduğum bölüm ile alakalı..
Misafir
#7
:blush:ya ben bunu tam olarak annlamadım algoritma olarak yazabilirmisinizzz çokk acilll
2008'den beri7.675 mesaj
#8
SDN programlama kafe konusunda çeşitli programlama dilleriyle yazılmış kodlar mevcut.

function fibonacci(f,b,s:Integer):boolean;
begin
repeat
Form1
.Memo1.Lines.Add(IntToStr(f)); //veya writeln
b := f + b;
f := b - f;
until f>s;
end;

fibonacci(0,1,99); //Kullanımı

Cevabını yaz

Cevap yazmak için giriş yap ya da üye ol. Eski forum kullanıcı adın ve parolanla girebilirsin.