3. Program mencari bilangan prima
Seperti program diatas buatlah 1 textbox (beri nama misal : txtangka) untuk menampung angka dan 1 buah label (beri nama misal : lblhasil)untuk menampung hasil.
Buat command button Proses, untuk button “LAGI” atau “EXIT” bisa ditambahkan sesuai selera dengan format seperti diatas.
Untuk syntax cmdproses kita harus mendefinisikan apa arti bilangan prima dan bilangan bukan prima.
Bilangan prima adalah bilangan yang hanya bisa dibagi oleh 1 dan bilangan itu sendiri selain itu dianggap bukan prima. Khusus untuk angka 1 disebut bilangan bukan prima dan 2 disebut bilangan prima. Contoh bilangan prima : 2, 3, 5, 7, 11,…
Secara manual kita mencari bilangan itu prima atau tidak dengan cara :
Contoh masukan angka adalah 5, maka proses penghitungannya adalah sebagai berikut :
1) 5 Mod 5 = 0
2) 5 Mod 4 = 1
3) 5 Mod 3 = 2
4) 5 Mod 2 = 1
5) 5 Mod 1 = 0
Perhatikan pada sub penghitungan 2-4 tidak ada angka 0 dalam rangkaian penghitungan tersebut membuktikan bahwa angka 5 tidak habis dibagi oleh angka-angka selain 1 dan 5 (bilangan itu sendiri), lain halnya jika yang bukan prima (coba kita masukkan angka 6 misalnya)
1) 6 Mod 6 = 0
2) 6 Mod 5 = 1
3) 6 Mod 4 = 2
4) 6 Mod 3 = 0
5) 6 Mod 2 = 0
6) 6 Mod 1 = 6
Perhatikan pada sub penghitungan 2-4 ternyata angka 0 dalam rangkaian penghitungan tersebut yang membuktikan bahwa angka 6 ternyata habis oleh angka pembilang selain 1 dan angka 6 (bilangan itu sendiri) berarti 6 adalah bilangan bukan prima.
Jika perintah diatas diubah ke dalam bahasa pemrograman visual basic berbentuk demikian :
If Val(Text1.Text) = 1 Then
text2.Caption = "Bukan Prima"
ElseIf Val(Text1.Text) = 2 Then
text2.Caption = "Prima"
Else
For i = 2 To Val(Text1.Text) - 1
If Val(Text1.Text) Mod i = 0 Then
text2.Caption = "Bukan Prima"
Exit For
Else
text2.Caption = "Prima"
End If
Next
End If
Perintah tersebut berarti : khusus untuk angka 1 definisikanlah sebagai “Bukan Prima” dan khusus untuk angka 2 definisikanlah sebagai “Prima” (anda akan melihat ada if dan elseIf itu dikarenakan ada 2 fungsi if yang berlaku dalam syntax tersebut sehingga ketika ada fungsi if lain maka fungsi if berikutnya diberi syntax elseIf. Kemudian perintah perhitungan berikut dalam fungsi tersebut bermakna : lakukanlah perhitungan ke-2 sampai ke-angka yang bersangkutan dikurangi 1 (untuk melakukan fungsi perulangan gunakan fungsi Next). Kenapa hal ini dilakukan? Jawabannya adalah karena kita hanya menyoroti hasil sisa bagi (Mod) dari perhitungan ke-2 sampai angka yang bersangkutan dikurangi 1 saja, karena semua angka prima maupun bukan prima sudah jelas habis dibagi oleh angka 1 dan angka yang itu sendiri jadi yang kita fokuskan adalah perhatian pada penghitungan ke-2 sampai ke-angka dikurangi 1. Jika dalam perhitungan tersebut terdapat sisa hasil bagi (Mod) = 0 maka bilangan tersebut bukan prima.
Tidak ada komentar:
Posting Komentar