Contoh soal dan latihan kode program dalam bahasa Java kali ini akan membahas cara membuat deret fibonacci. Latihan ini menguji pemahaman seputar kondisi if else, perulangan for dan konsep dasar teori matematika.
Soal Membuat Deret Fibonacci
Buatlah kode program bahasa Java untuk menampilkan deret angka fibonacci. Program meminta 1 data input berupa jumlah deret yang diinginkan.
Berikut contoh hasil akhir yang diinginkan (1) :
# Program Java Deret Fibonacci # ================================ Jumlah deret fibonacci yang diinginkan: 10 0 1 1 2 3 5 8 13 21 34
Berikut contoh hasil akhir yang diinginkan (2) :
# Program Java Deret Fibonacci # ================================ Jumlah deret fibonacci yang diinginkan: 17 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987
Tips Membuat Kode Program Deret Fibonacci
Deret fibonacci adalah deret matematika dimana dua angka pertama adalah 0 dan 1, lalu angka ketiga dan seterusnya di dapat dari penjumlahan dua angka sebelumnya. Berikut 20 angka pertama dari deret fibonacci:
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181
Rumus deret Fibonacci bisa ditulis sebagai Un = Un-2 + Un-1, artinya suku ke-n perupakan penjumlahan dari dua suku sebelumnya.
Mengutip wikipedia, deret seperti ini pertama kali dijelaskan oleh matematikawan India, Gopala dan Hemachandra pada tahun 1150, ketika menyelidiki berbagai kemungkinan untuk memasukkan barang-barang ke dalam kantong. Di dunia barat, barisan ini pertama kali dipelajari oleh Leonardo da Pisa, yang juga dikenal sebagai Fibonacci (sekitar 1200), ketika membahas pertumbuhan ideal dari populasi kelinci.
Untuk membuat program deret fibonacci menggunakan bahasa Java, kita bisa buat sebuah perulangan. Kecuali untuk angka pertama dan kedua, angka ketiga dan seterusnya bisa dihitung.
Berikut tutorial pendahuluan yang bisa diikuti:
- Pengertian dan Cara Penulisan Variabel Bahasa Java
- Tipe Data Integer Bahasa Java
- Perulangan FOR Bahasa Java
- Percabangan Kondisi IF Bahasa Java
Kode Program Java Membuat Deret Fibonacci
Berikut salah satu solusi dari soal menampilkan deret fibonacci menggunakan bahasa pemrograman Java:
import java.util.Scanner; import java.util.Locale; class DeretFibonacci { public static void main(String args[]){ Scanner input = new Scanner(System.in).useLocale(Locale.US); System.out.println("# Program Java Deret Fibonacci #"); System.out.println("================================"); System.out.println(); int n, t1 = 0, t2 = 1, angka_berikutnya = 0; System.out.print("Jumlah deret fibonacci yang diinginkan: "); n = input.nextInt(); System.out.println(); for(int i = 1; i <= n; i++) { // Tampilkan 2 angka pertama if(i == 1) { System.out.print(t1 + " "); continue; } if(i == 2) { System.out.print(t2 + " "); continue; } // Hitung untuk angka ke 3 dan seterusnya angka_berikutnya = t1 + t2; t1 = t2; t2 = angka_berikutnya; System.out.print(angka_berikutnya + " "); } System.out.println(); input.close(); } }
Di awal kode program terdapat perintah untuk mengimport 2 class package bawaan Java, yakni java.util.Scanner dan java.util.Locale.
Class Scanner diperlukan sebagai cara menerima input dalam bahasa Java, sedangkan class Locale dipakai agar proses input angka pecahan menjadi seragam (menggunakan tanda titik sebagai tanda pecahan).
Masuk ke dalam class DeretFibonacci, di baris 7 terdapat perintah Scanner input = new Scanner(System.in).useLocale(Locale.US). Ini adalah proses pembuatan object dari class Scanner agar kita bisa membaca kode inputan dengan bahasa Java.
Kemudian di baris 13 terdapat deklarasi variabel i, t1, t2 dan angka_berikutnya. Keempatnya akan kita pakai untuk menghitung deret.
Program meminta data input n di baris 16 dengan perintah n = input.nextInt()
. Variabel n inilah yang akan menentukan jumlah deret angka fibonacci yang akan dicari.
Proses pencarian angka dilakukan dengan perulangan for antara baris 19-35. Perulangan dimulai dari i = 1
hingga i <= n
.
Untuk angka pertama dan angka kedua langsung ditampilkan oleh perintah System.out.println()
di dalam kondisi if pada baris 21-28. Variabel t1 dan t2 sudah berisi angka 0 dan 1 pada saat deklarasi di baris 13. Perintah continue diperlukan agar perulangan langsung lompat ke iterasi berikutnya.
Untuk angka ketiga dan seterusnya, di proses oleh kode di baris 30-32. Caranya, hitung t1+t2 dan simpan ke dalam variabel angka_berikutnya. Lalu update nilai t1 dan t2 untuk persiapan ke iterasi selanjutnya.
Demikian kode program membuat deret fibonacci dalam bahasa pemrograman Java. Latihan ini cukup sering dipakai untuk menguji pemahaman tentang perulangan. Semoga bisa bermanfaat.