Cara Mencetak Bilangan Prima Menggunakan Javascript

Share Post:

Share on facebook
Share on linkedin
Share on twitter
Share on pinterest
Share on email

Masih ingat dengan definisi Bilangan Prima? Menurut Wikipedia:

“Bilangan prima adalah bilangan asli yang lebih besar dari angka 1, yang faktor pembaginya adalah 1 dan bilangan itu sendiri. 2 dan 3 adalah bilangan prima. 4 bukan bilangan prima karena 4 bisa dibagi 2.”. Angka dua(2) adalah bilangan prima yang satu-satunya genap.

Kali ini saya akan menjelaskan bagaimana cara mencetak bilangan prima menggunakan javascript.

Berikut kondisi bilangan prima yang harus dipenuhi:

  1. Bilangan harus lebih besar dari angka 1
  2. Bilangan yang hanya bisa dibagi dengan angka 1 dan bilangan itu sendiri.

Yang perlu diperjelas adalah point ke 2 supaya lebih mudah diimplementasikan di pemprogramman.

#1 Metode Pertama – Menggunakan Bantuan Counter

Menggunakan counter dalam membantu perhitungan. Counter ini akan menghitung berapa banyak pembagi yang sudah dilakukan. Jika counter lebih dari 2 maka dia bukan bilangan prima.

var n = 5;
var i = 0;
var counter = 0;

for (i = 1; i <= n; i++)
  if (n % i === 0)
    counter++;

if (counter == 2)
  document.write('Angka ' + n + ' adalah bilangan prima');

#2 Metode Kedua – Tanpa Bantuan Counter

Kali ini tidak menggunakan counter, tetapi melakukan pembagiannya mulai diatas angka 1 sampai N – 1. Jika berhasil sekali saja dibagi, maka dapat dipastikan gagal.

Contoh: Jika diinputkan angka 5, maka yang perlu dicheck pembagiannya adalah 2, 3, 4.
Contoh: Jika diinputkan angka 10, maka yang perlu dicheck pembagiannya adalah 2, 3, 4, 5, 6, 7, 8, 9.

var isPrime = true;
for (i = 2; i <= (n - 1); i++)
  if (n % i === 0) {
    isPrime = false;
    break;
  }

if (isPrime)
  document.write('Angka ' + n + ' adalah bilangan prima'  + '<br />');

#3 Metode Ketiga – Pengembangan Dari Metode Pertama

Metode ini adalah pengembangan dari metode kedua. Jika kalian perhatikan, saat mulai melakukan pengecheckan angka, dimana angka nya > N/2 tidak perlu di lakukan pengecheckan.

Contoh: Jika diinputkan angka 5, maka yang perlu dicheck adalah 2 saja. Kenapa? Karena 5 / 2 = 2,5. Angka 3 sudah lebih dari 2,5. Coba kalian hitung jika 3 * 1 = 3, 3 * 2 = 6. Sudah pasti bukan kadidat untuk membagi, apalagi angka 4 dst. Ingat bilangan prima harus habis dibagi dengan 1 dan angka ybs.

var isPrime = true;
for (i = 2; i <= Math.floor(n /2); i++)
  if (n % i === 0) {
    isPrime = false;
    break;
  }

if (isPrime)
  document.write('Angka ' + n + ' adalah bilangan prima'  + '<br />');

#4 Metode Keempat – Pengembangan dari Metode Ketiga

Metode ini mirip dengan metode ke 3. Hanya saja kondisinya adalah dimana angkanya > akar_dari(n) tidak perlu dicheck.

var isPrime = true;
for (i = 2; i <= Math.floor(Math.sqrt(n)); i++)
  if (n % i === 0) {
    isPrime = false;
    break;
  }

if (isPrime)
  document.write('Angka ' + n + ' adalah bilangan prima'  + '<br />');

Klik disini untuk melihat full source codenya.

One Response

Leave a Reply

Your email address will not be published.

CAPTCHA Image

*