Program Deret Bilangan Fibonaci dengan C++

Fibonaci adalah barisan bilangan dimana bilangan ke 3,4,5, dst merupakan hasil penjumlahan dari dua buah bilangan di depannya. Bilangan pertama dan kedua, sudah ditentukan lebih dahulu kemudian menentukan bilangan berikutnya dengan cara menjumlahkan 2 bilangan di depannya. Misalnya bilangan pada suku 5 adalah hasil penjumlahan dari bilangan pada suku ke 3 dan 4.

Secara matematika, Bilangan Fibonacci dinyatakan dengan rumus :


dimana F(n)  adalah bilangan Fibonacci pada suku  ke-n

Contoh :    Carilah bilangan Fibonacci pada suke ke- 6.

F(0)=0, F(1)=1
F(2) = F(2-1) + F(2-2) = F(1) + F(0) = 1
F(3) = F(3-2) + F(3-2) = F(2) + F(1) = 2
F(4) = F(4-1) + F(4-2) = F(3) + F(2) = 3
F(5) = F(5-1) + F(5-2) = F(4) + F(3) = 5

Jadi deret 6 suku pertama adalah  0    1    1    2    3    5

Perhitungan nilai suku ke-n bersifat rekursif karena menggunakan rumus yang sama secara berulang-ulang.  Dalam pemrograman computer, perhitungan secara rekursif kurang disukai karena menggunakan banyak lokasi di memory di Komputer. Jika komputasinya besar, maka bisa menyebabkan terjadinya hang pada komputer.

Algoritma :

1. Mulai
2. Deklarasikan variable n,j,s, F
3. Tentukan nilai  banyaknya suku n
4. Buat perulangan j mulai 0 hingga n. 
5. Jika j<=n, lanjutkan ke langkah ke langkah 6. Jika tidak, lanjutkan ke langkah  11.
6. Jika j=0, maka Fj=0. 
7. Jika j=1, maka Fj=1
8. Jika j>=2, hitung suku ke-j Fn = F(j-1) + F(j-2)
9. Ulangi langkah 5
10. Cetak hasil bilangan Fibonacci
11. Selesai.

Flowchart


Program

#include
#include
#include
void main()
{   clrscr();
    int j,n,s;
    int F[50];
    cout<<"\nMasukkan Nilai n = ";
    cin>>n;

    //Hitung bil Fibonacci
    for(j=0;j
    { if(j==0) F[j]=0;
      if(j==1) F[j]=1;
      if(j>=2)
      {
F[j]=F[j-1] + F[j-2];
      }
       cout<
    }
    getch();
}

Hasil program :


Demikian pembahasan tentang program deret bilangan Fibonacci dengan bahasa C++. Selamat belajar, semoga sukses selalu. Amin


Tidak ada komentar:

Posting Komentar

Silakan memberikan komentar dan pertanyaan yang sifatnya positif.