Barisan angka Fibonacci adalah barisan yang didefinisikan secara rekursif. Perhatikan barisan angka berikut :
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, ...
angka ke 3 dan seterusnya adalah penjumlahan dari dua angka di depannya.
Bagaimana membuatnya dengan PASCAL ?
Logikanya adalah seperti ini :
1. Karena hasil penjumlahan baru dimulai dari angka ke 3 (merupakan penjumlahan angka kesatu dan kedua), maka wakilkan angka pertama dan kedua (misalkan dengan f1 dan f2) dan tampilkan angka pertama dan kedua yaitu 0 dan 1.
2. Buatlah perulangan dari hitungan ke 3 sampai batas yang diinginkan (misalnya sampai 20).
3. Wakilkan juga hasil penjumlahan (misalkan dengan f3) untuk menampung f1+f2
4. Tampilkan f3
5. Sekarang f1 nilainya disamakan dengan f2 (f1=f2) dan f2 sendiri disamakan dengan f3 (f2=f3)
6. Selesailah...
Programnya seperti ini :
program fibonacci;
var
i,f,f1,f2:integer;
begin
clrscr;
writeln('FIBONACCI');
write('0 ');
write('1 ')
f1:=0;
f2:=1;
for i:=3 to 20 do
begin
f:=f1+f2;
write(f,' ')
f1:=f2;
f2:=f;
end;
end.
Tentunya program ini belum 100% berjalan. Beberapa hal kecil saya hapus. Silakan diperbaiki sendiri sambil belajar....(kalau mau,ubah juga ke While maupun repeat)
thanks mas atau mba atas penjelasannya, kebetulan ane ada tugas bikin baris fibonacci pake pascal.
BalasHapussangat berguna Thanks semoga bermanfaat
BalasHapus