Rabu, 18 Maret 2015

Rekursif

              Pada tulisan blog saya kali ini saya akan membahas tentang rekursif sesuai dengan materi praktikum saya minggu ini.  
PROSEDUR dan FUNGSI REKURSIF Prosedur dan fungsi merupakan sub program yang sangat bermanfaat dalam pemrograman, terutama untuk program atau proyek yang besar. Manfaat penggunaan sub program antara lain adalah :
  1. meningkatkan readibility, yaitu mempermudah pembacaan program
  2. meningkatkan modularity, yaitu memecah sesuatu yang besar menjadi modul-modul atau bagian-bagian yang lebih kecil sesuai dengan fungsinya, sehingga mempermudah pengecekan, testing dan lokalisasi kesalahan.
  3. meningkatkan reusability, yaitu suatu sub program dapat dipakai berulang kali dengan hanya memanggil sub program tersebut tanpa menuliskan perintah-perintah yang semestinya diulang-ulang.
Yahhh langsung saja berikut ini merupakan source code tentang bilangan fibonacci pada pascal.


program fibonacci;
uses crt;
var
  x,i,pil : integer;

function fib(n:integer):integer;
begin
  if (n=1) then fib:=0 else
  if (n=2) then fib:=1 else
  fib:=fib(n-1)+fib(n-2);
end;

procedure tampilan;
begin
  clrscr;
  gotoxy(15,4); writeln('Selamat Datang di Deret Bilangan Fibonacci');
  gotoxy(20,6); writeln('Tekan ENTER untuk melanjutkan !');
  readln;
end;

procedure menu;
begin
  clrscr;
  gotoxy(23,4); writeln('1. Menghitung Deret Fibonacci');
  gotoxy(23,5); writeln('2. Keluar');
  gotoxy(23,6); writeln('-----------------------------');
  gotoxy(26,7); writeln('Pilihan = ');
  gotoxy(37,7); readln(pil);
end;

procedure input;
begin
  clrscr;
  writeln(' Deret fibonacci');
  writeln;
  writeln;
  write(' Masukkan banyak deret : ');
  readln(x);
  writeln;
  write(' Hasil = ');
  for i:=1 to x do
  write(fib(i),' ');
  writeln;
  writeln;
  write(' Tekan ENTER untuk kembali!');
  readln;
end;

BEGIN
  clrscr;
  tampilan;
  repeat
  menu;
  if (pil<1) or (pil>2) then
  begin
    writeln;
    writeln('ERROR');
    writeln('Masukkan Pilihan Sesuai Ketentuan!');
    readkey;
  end;

  case pil of
  1:input;
  2:exit;
  end;
  until pil=2;
END.


Hasil Output :


Gambar 1. Tampilan awal.


Gambar 2. Tampilan menu.


Gambar 3. Tampilan pilihan nomor 1.


Gambar 4. Menginputkan nilai.


Gambar 5. Output hasil.

Tidak ada komentar:

Posting Komentar