Mau kaos (T-shirt) Wordpress keren? (Selengkapnya)
Dapatkan Script SMS Gateway PHP + MySQL

Seperti: software pengirim SMS massal, SMS survei, SMS polling, SMS quick count, SMS dakwah, Web2SMS dan masih banyak lagi... semuanya berbasis PHP & MySQL
[Info Lengkap...]



Ide Membuat Program Mengecek Bilangan Prima


April 1st, 2009 | by rosihanari | Cetak Artikel Ini Cetak Artikel Ini

Sebelum RKPU se-universitas dimulai, mending nge-blog dulu ah… daripada bengong.

Mau.. nulis apa yah… ah.. ini saja, saya mau menulis bagaimana ide membuat program atau script untuk menentukan suatu bilangan bulat merupakan bilangan prima atau bukan. Meskipun nampaknya sepele, ah… itu kan pelajaran anak SD, tapi masalah ini banyak membuat pusing orang-orang dewasa, termasuk mahasiswa (bukan nyindir sih… tapi kenyataan). Ketika mereka diberikan tugas bagaimana membuat program atau script untuk menyelesaikan masalah tersebut, ada yang menyerah, ada yang tanya sana tanya sini, ada yang ambil jalan pintas… nyontek… ngopi punya teman atau download program dari internet, dan sebagainya. Yang tetap konsisten dan istiqomah untuk menyelesaikannya dari hasil pemikiran dan ide sendiri cuman beberapa gelintir mahasiswa saja. But.. it’s OK… itu semua manusiawi kok :-)

Nah… kembali lagi ke masalah utama, yaitu bagaimana ide membuat program untuk menentukan suatu bilangan bulat termasuk prima atau bukan, tentunya kita tidak boleh lepas dari konsep yang telah kita terima ketika SD. Suatu bilangan bulat positif N dikatakan ‘tidak prima’ jika terdapat bilangan bulat antara bilangan-bilangan 1 s/d N yang menjadi faktor selain 1 dan N. Yang dimaksud faktor di sini adalah pembagi habis. Atau dengan kata lain, N dikatakan tidak prima jika terdapat bilangan bulat antara 2 s/d N-1 yang membagi habis N.

Berdasarkan konsep tersebut, sebenarnya kita sudah dapat membuat programnya. Trus.. bagaimana implementasinya?

OK… langkah pertama kita asumsikan terlebih dahulu bilangan N ini adalah PRIMA.

Langkah kedua, kita cek untuk setiap bilangan mulai dari 2 sampai dengan N-1 apakah bilangan-bilangan tersebut ada yang membagi habis N. Jika ada, maka status N sekarang berubah menjadi TIDAK PRIMA. Sebagai contoh misalkan N nya kita ambil 9. Kita asumsikan 9 ini adalah PRIMA. Selanjutnya kita cek mulai bilangan 2 s/d 8 apakah ada yang membagi habis 9. Kita mulai dari 2 terlebih dahulu. OK… 2 tidak membagi habis 9, maka status N tetap PRIMA. Next… kita cek untuk 3. Nah… kita tahu bahwa 3 membagi habis 9, maka status N berubah menjadi TIDAK PRIMA. Sebenarnya Anda bisa langsung mem-break proses pengecekan untuk bilangan 4, 5, …, 8 karena kita sudah menemukan satu faktor yang bukan 1 dan N. Namun… kalau Anda teruskan pun juga tidak masalah.

Dari penjelasan di atas, kita bisa langsung buat programnya. Contoh program berikut ini menggunakan PASCAL

program cekPrima;
var N, i : integer;
    status : string;
begin
    write('Masukkan N : ');
    readln(N);
    status := 'PRIMA';
    for i:=2 to N-1 do
    begin
       if (N mod i = 0) then
       begin
           status := 'TIDAK PRIMA';
           break; 
       end;
    end;
    write('Bilangan ',N,' adalah : ',status);
end.

Bagaimana dengan implementasinya di PHP… ya… sami mawon.

<?php
 
$n = ...; // silakan masukkan nilai N di sini
$status = "PRIMA";
for ($i = 2; $i <= $n-1; $i++)
{
  if ($n % $i == 0)
  {
     $status = "TIDAK PRIMA";
     break;
  }
}
echo "Bilangan ".$n." adalah : ".$status;
?>

Gimana… mudah bukan membuat ide dan programnya? :-)


Beberapa artikel terkait


Share this article on:

Kata kunci: algoritma - pascal - prima - program -


Ada 8 komentar dalam artikel ini.

  1. medi says:

    scripnya udah coba dengan inputan angka minus blm???

  2. rosihanari says:

    to medi: silakan dimodifikasi sendiri ya supaya bilangan minus tidak bisa diolah :-) kalau saya bahas juga mengenai kemungkinan semua input nanti malah melebar dari permasalahan. Nanti ada yang bilang ‘lho kok dimasukkan bilangan minus bisa’, ada juga yang bilang ‘lho kok dimasukkin bilangan real bisa’, ‘lho kok dimasukin huruf bisa’. Wah… ntar pembahasannya malah melebar. Silakan dimodifikasi sendiri karena saya hanya menjelaskan konsep mengenai bilangan primanya saja. Sedangkan untuk validasi input sengaja saya abaikan.

  3. Rhendytay says:

    makasih ya…
    ne mau nanya kalo utk java gmn ya???
    thank…

  4. Rhendytay says:

    validasi input nya juga dong..
    soalnua aku br belajar php..
    thank u ya..

  5. rosihanari says:

    @rhendytay: wah saya gak bisa java mas.

  6. RHENDYTAY says:

    OW GT YA…
    GMN DENGAN VALIDASI INPUTNYA…
    PAK GMN KALO KT MAU MEMBUAT POHON NATAL DENGN VB???
    CONTOHNYA:
    *
    ***
    *****
    THANK YOU..

  7. rosihanari says:

    @rhendytay: validasi input gimana maksudnya mas?

  8. rhendy says:

    validasi untuk membuat bilangan prima di php punya…
    tlg pak jelasin secara lengkap…
    blh tak???
    thank u ya…



Tolong beri komentar donk!

Komentar Anda akan berguna untuk kemajuan blog ini.


Mohon maaf, komentar yang menggunakan email palsu atau komentar bernada negatif atau cemooh secara otomatis akan terhapus karena dianggap spam dan tidak akan tampil dalam daftar komentar.

Dimohon jangan pula memasukkan code program dalam bentuk apapun ke dalam komentar karena akan dianggap spam.

*
Untuk membuktikan bahwa komentar Anda bukan spam, tulis kata yang muncul dalam gambar di bawah ini. Bila Anda tidak bisa membaca kata dalam gambar, klik pada gambar tersebut untuk mendengarkan suara dari kata tersebut
Click to hear an audio file of the anti-spam word