30 June 2010

Menentukan Bilangan Prima

Bilangan prima adalah bilangan yang hanya bisa dibagi dengan angka 1 dan angka itu sendiri kecuali bilangan 1, kalau tidak salah itu adalah definisi yang diberikan guru dulu waktu SD, kalau sekarang da berubah aku gak tau. Untuk membuat sebuah aplikasi sederhana, terutama dengan menggunakan visual basic 6 kita bisa menggunakan banyak algoritma, bisa saja algoritma pemrograman yang saya gunakan tidak sama dengan yang anda pikirkan, saya kira hal itu sah-sah saja. Disini saya mencoba menggunakan algoritma yang sederhana saja dengan memamfaatkan perulangan "for ... next".

Untuk membuat aplikasi ini cukup mengggunakan sebuah textbox dan sebuah commandbutton. Berikut adalah contoh kode yang saya gunakan:

Private Sub cmdOK_Click()
Dim nilai, x
If Text1.Text = "" Then
MsgBox "Anda belum memasukkan angka", vbInformation + vbOKOnly, "Error"
Text1.SetFocus
ElseIf Val(Text1.Text) <= "0" Then
MsgBox "Anda hanya boleh memasukkan angka lebih besar dari 0", vbInformation + vbOKOnly, "Error"
Text1.SetFocus
ElseIf Val(Text1.Text) = "1" Or Val(Text1.Text) = "2" Then
MsgBox Text1.Text & " BUKAN PRIMA", vbInformation + vbOKOnly, "Informasi"
Text1.SetFocus
Else
For i = 2 To (Val(Text1.Text) - 1)
nilai = Val(Text1.Text) Mod Val(i)
If nilai = "0" Then
x = x + 1
Exit For
End If
Next i

If x > 0 Then
MsgBox Text1.Text & " BUKAN PRIMA"
Else
MsgBox Text1.Text & " BILANGAN PRIMA"
End If
End If
End Sub


Algoritma yang saya gunakan sangat sederhana menurut saya, dimana saya akan melakukan perulangan yang dimulai dari 2 sampai angka yang kita masukkan yang sudah dikurangi 1, dimana bila dalam perulangan program menemukan nilai bagi yang tidak ada sisa atau "0" maka bisa dipastikan bilangan itu bukan prima karena memiliki angka bagi. Untuk menghasilkan program seperti itu maka saya menggunakan operator matematika berupa"mod", yaitu nilai sisa dari hasil bagi. Misalnya 15 / 4 maka sisa baginya adalah 3, maka 15 mod 4 hasilnya adalah 3.

Bila sisa bagi adalah "0" maka nilai dari baris "If nilai = "0" Then" menjadi True maka program akan mengeksekusi baris dibawahnya yang menyebabkan nilai "x" menjadi bertambah 1 dan "exit for" digunakan untuk keluar dari perulangan dan akan langsung mengeksekusi perintah setelah "next".

Dalam kode program yang saya gunakan saya menggunakan kata "Val" yang merupakan perintah untuk konversi nilai ke numerik.

Sekali lagi saya tekankan, cara saya membuat program ini mungkin berbeda dengan yang anda pikirkan, namun itu bukanlah sebuah persoalan, mudah-mudahan contoh yang saya berikan bisa menambah pengetahuan kita semua. Semoga berguna.

5 comments:

belajar flash said...

bil prima 2,3,5,7,9 dst
low djlnkan program diatas maka angka 2 dianggap bukan prima

Peter Hartawan said...

wah thx bgt kk blognya sangat membantu, tp sy mau nanya nih, sy mau buat biar bs browse picture gtu n bs k save, cz sy lg coba buat kyk form pendaftaran gtu, bs input biodata plus foto gtu, mohon pencerahannya kk....
klo boleh d email k email ku yah...
stars_buckz@yahoo.com

_THX_

Anonymous said...

daun sinkong daun kelor ga yambung bror

suratman said...

hmm,wah ilmunya mantap...boleh dong tutorial untuk membuat aplikasi depot air minum, yang terdapat stoknya juga...terima kasih

Anonymous said...

ijin nyedot GAN

 
>