Deret Bilangan Prima dengan PHP

Iseng lagi di siang hari. Kali ini aku akan membuat program sederhana untuk menampilkan deret bilangan prima dengan PHP. Program ini akan menampilkan mana saja yang merupakan bilangan prima. Pengguna program harus memasukkan batas bilangan yang diinginkan. Misalnya saja 100. Maka program ini akan mencari bilangan prima mulai dari 1 hingga 100. Berikut tampilan program yang kita buat.

Gambar Awal Deret Bilangan Prima dengan PHP

Gambar Awal Deret Bilangan Prima dengan PHP

Gambar Hasil Deret Bilangan Prima dengan PHP

Gambar Hasil Deret Bilangan Prima dengan PHP

DEMO

Penjelasan Singkat

Program deret bilangan prima dengan php membutuhkan sebuah form dalam html. Pada form tersebut memiliki action ke proses.php. Dalam form tersebut hanya terdapat 1 inputan, yaitu inputan untuk memasukkan batas bilangan. Ketika batas sudah dimasukkan pengguna klik tombol proses yang akan memproses bilangan tersebut guna mencari bilangan prima. Pada hasil, terdapat tombol untuk mengulangi program.

FORM HTML untuk Deret Bilangan Prima dengan PHP

Pemrosesan Deret Bilangan Prima dengan PHP

Cara Menentukan bilangan sebagai Bilangan Prima

Untuk menentukan bilangan prima, yang harus kita lakukan adalah dengan melihat apakah bilangan tersebut TIDAK PUNYA pembagi selain  satu dan dirinya sendiri. Pada program di atas, kita coba menghitung total pembagi bilangan. Kita mencoba satu per satu bilangan dan mencobakan bilangan tersebut untuk membagi. Total pembagi disimpan pada variable $p.

for($j=1; $j<=$i; $j++) merupakan iterasi yang digunakan untuk mencacah pembagi mulai dari 1 sampai bilangan yang dimaksud. Setiap iterasi kita cek apakah $j merupakan pembagi dari $i dengan cara melihat apakah $i modulo $j = 0. Ketika hasil modulo-nya 0 berarti $j adalah pembagi dari $i. Dan kita harus menambah total pembagi dengan $p += 1.

Setelah proses iterasi selesai, kita melihat apakah pembaginya kurang dari 2. Jika iya, berarti bilangan tersebut adalah prima, jika tidak berarti bukan prima. Kenapa kurang dari 2 dan bukan sama dengan 2. Karena 1 merupakan bilangan prima. Pembagi dari 1 hanya 1, yaitu: 1 yang bersifat sebagai  pembagi pertama dan 1 sebagai dirinya sendiri.

Apa yang bisa dikembangkan?

  • Sebenarnya, kita bisa mengurangi iterasi dengan cara “hanya melihat bilangan ganjil”. Bilangan prima genap hanya 2. Selain 2 semuanya merupakan bilangan ganjil. Kita bisa merubah iterasi dimulai dari 3 dan iterasinya loncat 1. Buatlah iterasi 3,5,7,9 dst.
  • Pembagi bilangan tidak harus mulai 1 sampai bilangan yang dimaksud. Misal bilangan 10. Kita tidak perlu mengecek pembagi mulai 1 sampai 10. Kita hanya perlu mengecek pembagi setengahnya saja. Kenapa? Karena jika pembaginya lebih dari setengah yang dihasilnya pasti bukan bilangan bulat. Contoh 10/6 = 1,666… Jadi, pembagi maksimal agar menghasilkan bilangan genap adalah setengahnya.

Penutup

Demikian program Deret Bilangan Prima dengan PHP. Semoga bermanfaat.