









Dear Kanjeng Pembaca sekalian,… setelah basic tentang fibonacci diketahui, dan telah dijelaskan pada artikel sebelumnya… berikut ini kita bahas tentang case study berikut ini sepertinya gampang… hanya nebak angka fibonacci aja kok …!!! Naaagh monggo dibaca dulu case nya seperti berikut :
Kalau diperhatikan sekilas… aaaagh itu fibonacci 3 numbers…. karena angka 4 diperoleh dari 3 angka sebelumnya yiatu 1, 1, dan 2 ….!!! Angka 7 juga diperoleh dari penjumlahan 3 angka sebelumnya yaitu 1, 2, dan 4 … gitu kira-kira khan …??? Yup….. tapi seketika terjadi perubahan logik… lhooo kok angka 12 itu menghasilkan 112 …??? Ternyata ada perubahan rumus… yang menarik tidak ada penjelasan nya… jadi disini mahasiswa dituntut untuk jeli… !!! Kalau dalam dunia realita atau pekerjaan … requirement ini harus ditulis secara rinci… dan part dari Business Requirement Document …!!!
Naaagh ternyata terlihat bahwa ketika masuk angka fibonacci ke-11 … sudah tidak 3 numbers lagi… berubah ini soal menjadi 2 numbers …!!! Yang menarik disoal gak dijelaskan… mestinya dijelaskan ketika masuk ke-11 fibonacci nya menjadi 2 numberz instead of 3 numbers …!!! Semula memang mengira ini salah soal… soalnya kok lama-lama perbedaan nya besar… namun setelah dianalisa lebih lanjut… woooowww ada jebakan betmeeen ternyata… !!! Kalau seperti ini yaaagh gampang dong… tinggal cegat kalau diatas 10 ubah tambannya jadi 2 numbers…. gitu aja kok repooot …!!! Naaagh logik programnya gimana …???
So ini potongan logik utamanya… simple aja… ada input mau berapa kali angka yang mau diuji… terus angka dimasukkan dengan array looping …!!! Setelah selesai diinput berikutnya ada looping juga yang akan mengirimkan parameter ke fungsi go_fibonacci …!!! Parameter yang dikirim ada 5,… yaitu parameter pertama tentang angka yang akan diuji dalam hal ini angka array yang akan diuji,… parameter kedua adalah counter ini adalah menentukan mulai angka ke-berapa derived number dihitung (dalam hal ini 4 adalah angka yang akan menghitung angka 1, 2 dan 3). Kemudian t1 adalah angka pertama dalam hal ini 0, selanjutnya t2 dan t3 adalah angka urutan ke-2 dan ke-3 …!!! Naaagh gimana fungsinya go_fibonacci nya …???
So terlihat bahwa jika angka dibawah 4 alias maka langsung mengambil nilai t1 atau t2 atau t3 tergantung angkanya …!!! Jika diatas atau sama dengan 4 baru deegh… mulai menghitung fibonacci… kemudian aga recursive function dengan memasukkan counter+1 … ini untuk terus menerus menghitung …!!! Perhatikan ketika sudah akan melewati 10… t1 diset menjadi 0, sedangkan t2 adalah t3 dan t3 adalah nextTerm (alias angka perhitungan) …!!! So dari sini hasilnya menjadi sesuai …!!!
So… hasilnya sama, dan ini memang menuntut kejelian karena dalam soal gak ada petunjuk, misalnya ketika mencapai angka fibonacci ke-11 harus diubah menjadi 2 numberz… !!! Demikian yang dapat dijelaskan … semoga bermanfaat dalam mengasah logik programming … !!! Ciaooo 😀
Leave a Reply