5.00 / 1 oy

Java'da Fibonacci sayılarını hesaplayan program

Fibonacci sayıları, 1 ve 1 ile başlayan ve sürekli olarak önceki 2 sayının toplanarak bir sonraki sayının bulunduğu bir dizidir. Rivayete göre Fibonacci isimli bir matematikçinin hayvanların üreyerek çoğalmaları sonucu belirli zaman dilimleri sonunda kaç adet olacağını hesaplamak üzere ortaya atılmıştır ancak sonrasında her sayının bir önceki ve sonraki sayıya oranının altın orana yakınsadığının fark edilmesinden sonra finanstan mimarlığa kadar bir çok alanda ilginç uygulamalarda kullanılmıştır. Konuya ilgi duyanlar fraktal çizimi ya da elliott dalga prensipleri gibi konulara bakabilirler.

Önce sadece fibonacci sayılarını bulan bir java programı kodlayalım, bir sonraki soruda da sayıların birbirlerine oranının nasıl altın orana yakınsadığına bakalım, gece uzun :)

Bu örnekte sadece fibonacci sayılarını yazdıran, ama vektörde saklamayan bir program hazırladım. Çıktı olarak sayıları yan yana yazdırdım, sadece ilk 20 fibonacci sayısını yazdırdım ve bunun için de 10 kere dönen bir for döngüsü kullandım, çünkü döngü her döndüğünde 2 sayı birlikte hesaplanarak çıktı alıyor.

Bu sorunun çözüm mantığı, döngüler konusunda kendine güzel bir problem arayanlar için oldukça uygundır çünkü sadece 2 değişken kullanarak hazırlanmış bir çözümdür. Döngü her döndüğünde önce sayı1, sonrasında da sayı2 güncellenmektedir ve çıktı ala ala fibonacci sayılarını sırayla yazdırmaktadır.


class Main {
  public static void main(String[] args) {
      
   int sayi1, sayi2;
   sayi1=1;
    sayi2=1;
    System.out.print(sayi1+" "+sayi2+" ");
    for (int i=1; i<=10; i++)
      {
        sayi1+=sayi2;
        System.out.print(sayi1+" ");
        sayi2+=sayi1;
        System.out.print(sayi2+" ");
       }
} 
  }

Çıktı:

1   1   2   3   5   8   13  21  34  55  89  144 233 377 610 987 1597   2584    4181    6765    10946   17711

utku33

24.12.2019 02:20

Bu soruya sadece kayıtlı kullanıcılar yanıt yazabilirler. Yanıt yazmak için lütfen giriş yapınız.

Reitix
Java'da Fibonacci sayılarını hesaplayan program

İnternet sitemizdeki deneyiminizi iyileştirmek için çerezler kullanıyoruz. Bu siteye giriş yaparak çerez kullanımını kabul etmiş sayılıyorsunuz. Daha fazla bilgi.