Algoritma dan Program Mencari Deret Fibonacci

Posted in
Algoritma :
Deklarasi
    n    : integer
    i    : integer
    a[1..50]: integer
Deskripsi
    Read n
    For i <- 0 to n do
        If (i < 2) then
        a[ i ] <- i
        Else
        a[ i ] <- a[ i - 2 ] + a[ i - 1 ]
        end if
    end for
    For i <- 0 to n do
        Write a[ i ]
    end for
    end

Program Biasa :
#include <iostream.h>
#include <conio.h>
int main(){     
int n,i,a[50];
cout<<"Deret Fibonacci";
cout<<"\nMasukkan batas deret fibonacci: ";
cin>>n;
for (i=0;i<n;i++){
if (i<2)
a[i]=i;
else
a[i]=a[i-2]+a[i-1];}
for(i=0;i<n;i++){
cout<<a[i]<<" ";}
getch ();
return 0;}

Program Class :
#include <iostream.h>
#include <conio.h>
class fibonacci{
public:
void masukan();
void proses();
void keluaran();
private:
int n,i,a[50];};
void fibonacci::masukan(){
cout<<"Deret Fibonacci";
cout<<"\nMasukkan batas deret fibonacci: ";
cin>>n;}
void fibonacci::proses(){
for (i=0;i<n;i++){
if (i<2)
a[i]=i;
else
a[i]=a[i-2]+a[i-1];}}
void fibonacci::keluaran(){
for(i=0;i<n;i++){
cout<<a[i]<<" ";}}
int main(){
fibonacci x;
x.masukan();
x.proses();
x.keluaran();
getch ();
return 0;}

Program Jeliot :
import jeliot.io.*;
public class MyClass {
public static void main() {
fibonacci x = new fibonacci();
x.masukan();
x.proses();
x.keluaran();}}
class fibonacci{
void masukan(){
System.out.print("Deret Fibonacci");
System.out.print("\nMasukkan batas deret fibonacci: ");
n = Input.readInt();}
void proses(){
for (i =0;i<n;i++){
if (i<2)
a[i] =i;
else
a[i] =a[i-2]+a[i-1];}}
void keluaran(){
for(i =0;i<n;i++){
System.out.print(a[i]);
System.out.print(" ");}}
private int n;
private int i;
private int[] a = new int[50];}

Penjelasan :
Program di atas adalah program yang digunakan untuk mencari deret fibonacci. Contoh 0,1,1,2,3,5 dimana tiap 2 angkanya ditambahkan lalu ditempatkan pada deret berikutnya begitu pula seterusnya. Sehingga pada program di atas kita gunakan fungsi perulangan yaitu for dilanjutkan dengan fungsi if atau percabangan dengan syarat (i<2) jika ya maka akan menampilkan nilai i, sedangkan tidak akan menampilkan hasil dari ((i-2)+(i-1)) dimana i adalah angka yang akan terus di ulang sampai dengan batasnya. Langkah selanjutnya kita tinggal menampilkan hasil dari percabangan di atas dengan perulangan atau fungsi if, agar hasilnya dapat berbentuk sebagai deret fibonacci tidah hanya menampilkan 1 hasil saja.