Searching...
Thursday, December 31, 2015

Bilangan Fibonacci dengan Python 3

Bilangan Fibonacci adalah bilangan-bilangan yang berurutan dengan pola khusus, seperti di bawah ini.

0, 1, 1, 2, 3, 5, 8, 13 dan seterusnya.

Dua bilangan pertama adalah 0 dan 1. Selanjutnya, bilangan selanjutnya adalah hasil penjumlahan dari 0 dan 1, yaitu 1.
Bilangan keempat dan seterusnya mengikuti pola yang sama dengan bilangan ketiga tadi. Bilangan tersebut merupakan hasil penjumlahan dari dua bilangan sebelumnya yaitu 2 dan 3.

Bilangan-bilangan tersebut dapat dihasilkan dengan menggunakan skrip Python sederhana yang ada di laman awal situs Python Software Foundation (https://www.python.org).


Pertama-tama definisikan sebuah fungsi bernama fib (n). Karena bilangan Fibonacci ini tak berhingga, fungsi ini dibatasi hanya untuk menampilkan bilangan Fibonacci dengan nilai yang tak lebih dari n.

Baris berikut

a, b = 0, 1

Merupakan variabel untuk nilai dua bilangan Fibonacci yang pertama yaitu 0 dan 1.

While a < n merupakan suatu kondisi, yaitu selama nilai a lebih kecil dari n maka jalankan langkah berikut.

print (a, end=' ') merupakan perintah untuk menampilkan di konsol nilai variabel a diikuti dengan spasi kosong dalam 1 baris.

Selanjutnya, nilai a diperbarui menjadi sama dengan nilai b (yang lama). Sedangkan nilai b yang baru merupakan jumlah dari nilai a ditambahkan dengan nilai b yang lama.

Demikian seterusnya, hingga nilai a sedikit lebih kecil daripada nilai n.

Secara lengkap, skrip Python tersebut adalah sebagai berikut.

def fib(n):
    a, b = 0, 1
    while a < n:
        print(a, end=' ')

        a, b = b, a+b

Jika ingin menampilkan deretan bilangan Fibonacci yang besarnya di bawah 10.000, panggil fungsi lib tersebut dengan n = 10.000.

fib(10000)

Pada konsol akan tampil bilangan Fibonacci seperti di bawah ini.

0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 

Demikianlah skrip Python untuk menampilkan bilangan Fibonacci. Sederhana, bukan?

Note:
Jika ingin menampilkan bilangan tersebut berurutan ke bawah, tidak dalam 1 baris, hapuslah 'end=' dari skrip sehingga menjadi:

        print(a, ' ')




0 comments:

Post a Comment

 
Back to top!