Şimdi Ara

Fortran fibonacci serisi

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
5
Cevap
0
Favori
2.353
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • merhaba arkadaşlar bu sene programlama dersi alıyorum.Şu sıralar fortran öğreniyoruz,fortranda çeşitli matematiksel hesaplar yapan programlar yazıyoruz.Size sormak istediğim bir nokta var,fibonacci serisinin ilk yedi elemanını hesaplayan programı yazdım fakat a'dan b'ye sayı dizisinde fibonacci elemanlarını bulan programı yazamadım.Bir kaç yol denedim fakat olmadı.Acaba nasıl bir yol izlemem gerekir,yazdığım ilk yedi elemanlık programın kodlarını aşağıya koyuyorum,onun üzerinden şurayı şu şekilde değiştirerek yapabilirsin ya da şu şekilde düşünmen gerekir diyerek yardımcı olursanız sevinirim.

    !fibonacci serisinin ilk 7 elemanı
    program xxx
    implicit none
    integer::a,b,i,t
    a=1
    b=1
    write(*,*)a
    write(*,*)b
    do i=1,5,1
    t=a+b
    a=b
    b=t
    write(*,*)t
    end do
    stop
    end program xxx







  • fortran'ı artık hatırlamıyorum ama yöntem olarak basit bir önerim olabilir senin yazdığın kod üzerinden.

    tanımlama kısmını x, y isimlerinde iki integer tanımlayıp bunu aralığı belirleyen değerler olarak kullan. ör:
    x=10000
    y=20000

    en alttaki write deyimini aşağıdaki şart sağlanması durumunda çalışacak duruma getir.
    if ((t .GE. x) .AND. (t .LE. y))
    write(*,*)t
    endif

    döngüyü de integer sınırına sığacak en büyük fib. sayısını kapsaması için ör. 48 yap.
    do i=1,48,1

    eğer döngüden çıkmak mümkünse fortran'da
    if (t .GT. y)
    kontrolü ile 48'e kadar gitmeden de çıkabilirsin.
  • fortran bilmiyorum ama belki mantık olarak işine yarar. Java da böyle;

    fibonacci sayılarını hesaplayan fonksiyon yazıldıktan sonra
     
    public static int fibonacci(int n)
    {
    if (n <= 2)
    return 1;
    else
    return fibonacci(n - 1) + fibonacci(n - 2);
    }

    main metodumda sonsuz döngü içerisinde çağırıyorum.
    Hesaplanan sayı x(5) den büyük ve y(25)'den küçükse ekrana yazdırıyorum.
    25 den büyük ise döngüden çıkartıyorum.
     
    int x = 5;
    int y = 25;
    for (int i = 0; ; i++) {
    int f = fibonacci(i);
    if (f > x & f < y ){
    System.out.println(i + ". fibonacci sayısı = " + f);
    }
    if (f > y ){
    break;
    }
    }



    < Bu mesaj bu kişi tarafından değiştirildi gergozen -- 4 Ocak 2011; 19:41:39 >




  • Fortran bilmiorm ama c# :D
    static int fibo(int n)
    {
    if (n <= 1) return n;
    else return fibo(n-1)+fibo(n-2);
    }

    static void Main(string[] args)
    {
    Console.WriteLine(fibo(10));
    Console.ReadLine();
    }
  • fortran biliyorum ama geç kalmışım

    evet gereksizdi
  • Yapay Zeka’dan İlgili Konular
    Raspberry Pi 4B ANA KONU
    6 yıl önce açıldı
    Daha Fazla Göster
    
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.