Belajar Web Programming PHP, HTML, MySQL dan Tutorial

Coding Membuat Deret Fibonacci Dengan PHP

Bilangan Fibonacci merupakan salah satu bilangan yang dikenal dalam bidang ilmu matematika. Bilangan ini berupa deret berurut dimana bilangan setelahnya diperoleh dengan menambahkan dua bilangan sebelumnya secara berurutan.

Contoh : 0, 1, 1, 2, 3, 5, 8 dst...

Deret tersebut diperoleh dari persamaan berikut:

image: wikipedia.org
Jadi apabila dijabarkan secara manual kita dapat menyusun deret bilangan fibonacci ini sebagai berikut:
deret 1 = 0
deret 2 = 1
deret 3 = deret (3-1) + deret (3-2)  = deret 2 + deret 1 = 1 + 0 = 1
deret 4 = deret 3 + deret 2 = 1 + 1 = 2
deret 5 = deret 4 + deret 3 = 2 + 1 = 3
deret 6 = 3 + 2 = 5
deret 7 = 5 + 3 = 8
deret 8 = 8 + 5 = 13
dst...

Penjelasan diatas adalah bagaimana angka-angka pada deret fibonacci tersebut tercipta. Pada dasarnya kita dapat mengetahui berapa nilai angka dari deret fibonacci ke-n dengan menggunakan rumus diatas. Namun untuk menerapkannya kedalam pemrograman khususnya menggunakan bahasa PHP perlu sebuah trik khusus untuk membuat perulangan yang dilakukan dalam PHP menjadi lebih efektif dan efisien.

Jika kita melihat penjabaran diatas nilai n dapat kita gunakan sebagai batas dalam perulangan untuk menentukan berapa nilai angka fibonacci pada deret tersebut. pertama kali kita akan mencoba untuk membuat deretnya terlebih dahulu baru kemudian kita implementasikan untuk mencari deret angka tersebut secara input user. Berikut sourcecodenya:

<?php
/* 
www.belajarwebpedia.com
Membuat Deret Fibonacci Dengan PHP
*/

$deret[1] = 0;
$deret[2] = 1;

$hasil .= "$deret[1], $deret[2]";
$n = 10;

for($i=3;$i<=$n;$i++)
{
 $x=$i-1;
 $y=$i-2;

 $deret[$i] = $deret[$x] + $deret[$y];
 $hasil .= ", $deret[$i]";
}
echo $hasil;

//output: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34
?>

Sourcecode diatas menghasilkan deret bilangan seperti yang tertera pada komentar output. secara sederhana deret 1 dan deret 2 sudah kita definisikan terlebih dahulu yaitu dengan nilai 0 dan 1 sehingga perulangan yang dilakukan adalah untuk mencari deret ke-3 sampai deret ke-n.

Untuk menampilkannya kita dapat menggunakan variabel $hasil dimana terdapat fungsi .= yang merupakan penggabungan string dari nilai variabel sebelumnya sehingga output pertama kali adalah deret 1 dan deret 2 kemudian nilai/value dari variabel tersebut dilanjutkan/disisipkan dengan deret fibonacci ke-n pada source code baris 19 hingga perulangan selesai. Cukup mudah bukan? bagaimana jika nilai n dibuat dinamis? tentu saja bisa yaitu dengan mengganti value $n di baris 11 yang tadinya bernilai 10 menjadi variabel $_GET atau $_POST yang diperoleh dari input user.

Untuk deret fibonacci yang dinamis dapat dilihat dari sourcecode dibawah ini. Namun agar proses tidak terlalu berat kita batasi sampai deret ke 100 saja ya ^^

<h2>Deret Fibonacci Dinamis Dengan PHP</h2>
<hr>
<form action="" method="get">
Nilai Ke-n <input type="number" name="n" placeholder="Max 100" required>
<input type="submit" value="Generate">
</form>
<hr>
<h3>Hasil Deret Bilangan Fibonacci</h3>

<?php
/* 
www.belajarwebpedia.com
Membuat Deret Fibonacci Dengan PHP
*/

$deret[1] = 0;
$deret[2] = 1;

$n = isset($_GET['n'])?$_GET['n']:'1';

if ($n >= 3 and $n <= 100)
{
 $hasil .= "$deret[1], $deret[2]";
 for($i=3;$i<=$n;$i++)
 {
  $x=$i-1;
  $y=$i-2;

  $deret[$i] = $deret[$x] + $deret[$y];
  $hasil .= ", $deret[$i]";

 }
 echo "<b>Deret Bilangan Fibonacci 1 - $n</b>";
 echo "<div style='color:blue'>Output: $hasil</div>";
} else {
 echo "<b style='color:red'>Maaf nilai n harus diantara 3 s/d 100<b>";
}
?>

Hasilnya adalah sebagai berikut:

Cukup mudah bukan? kalian bisa mencobanya dengan kreatifitas sendiri. Namun apabila kita tidak ingin menampilkan deretnya dan hanya ingin mengetahui berapa nilai Fibonacci pada deret ke-n kita dapat menyederhanakan source code diatas menjadi seperti dibawah ini.

<h2>Deret Fibonacci Dinamis Dengan PHP</h2>
<hr>
<form action="" method="get">
Nilai Ke-n <input type="number" name="n" placeholder="Max 100" required>
<input type="submit" value="Generate">
</form>
<hr>
<?php
/* 
www.belajarwebpedia.com
Membuat Deret Fibonacci Dengan PHP
*/

$deret[1] = 0;
$deret[2] = 1;

$n = isset($_GET['n'])?$_GET['n']:'1';

if ($n >= 1 and $n <= 100)
{
 if($n >= 3) {
 for($i=3;$i<=$n;$i++)
 {
  $x=$i-1;
  $y=$i-2;

  $deret[$i] = $deret[$x] + $deret[$y];
  $hasil .= ", $deret[$i]";

 }
  $fibo = $deret[$n];
 }
 if($n < 3) { 
  $fibo = $deret[$n]; 
 }
 echo "Bilangan Fibonacci pada deret ke - $n adalah ";
 echo "<b style='color:blue'>$fibo</b>";
} 
?>

Hasilnya adalah sebagai berikut:


Selamat mencoba ya :)
Labels: Algoritma, Fibonacci, Pemrograman, PHP, Tutorial

Terima kasih telah membaca Coding Membuat Deret Fibonacci Dengan PHP. Bila bermanfaat boleh di share yah :)

0 Comment for "Coding Membuat Deret Fibonacci Dengan PHP"

Back To Top