Jumat, 02 Maret 2012

Program fibonacci_rekursi; (pascal)


    Program fibonacci_rekursi;

    Uses crt;

    Var

    f: Array [1..50] of integer;

    {(*mendefinisikan variabel f yang berisi 1 sampai 50 elemen

    bertipe integer*)}

    x :integer;

    {(*variabel banyaknya bil prima yang di tampilkan*)}

    i : integer;

    {(*variabel bantu untuk indeks perulangan, menyatakan elemen

    array ke *)}

    Function Fibo (n:integer): integer;

    Begin

    if (n = 1) or (n = 2) then fibo := 1

    {(*bilangan pada suku pertama dan suku kedua didefinisikan

    sama dengan 1*)}

    else

    fibo:=fibo(n-1)+fibo(n-2)

    (*bilangan fibonacci pada suku ke i merupakan penjumlahan

    bilangan fibonacci pada suku ke-(i-1) dan suku ke-(i-2)*)

    end;

    Begin

    write('Cetak bilangan fibonacci sampai suku ke : ');

    readln(x);

    {(*memasukkan jumlah bilangan fibonacci yang akan ditampilkan*)}

    writeln;

    For i:=1 to x do

    (*perulangan utk mencetak bil fibonacci dari suku ke-1

    sampai suku ke x*)

    Begin

    f[i]:=fibo(i);

    write(f[i], ' ');

    end;

    writeln;

    writeln('Suku ke ',i,' : ',f[i]);

    (*mencetak bil fibonacci suku ke-i*)
    readln;
    end.

Tidak ada komentar:

Posting Komentar