Membuat
Fungsi Terbilang Dengan Visual Basic 6.0
Fungsi
terbilang adalah fungsi yang melakukan konversi dari angka menjadi teks
terbilangnya, misalnya 123,4567 menjadi seratus dua puluh tiga koma empat lima
enam tujuh.
Buatlah
sebuah project baru dengan template Standard.EXE. Rancanglah sebuah form
seperti terlihat pada gambar 1. Beberapa properti form tersebut harus diberi
nilai sebagai berikut:
Kontrol
|
Properti
|
Nilai
|
Form
|
Caption
|
Terbilang
|
TextBox1
|
Name
|
txtAngka
|
TextBox2
|
Name
|
txtTerbilang
|
|
Multiline
|
True
|
CommandButton1
|
Name
|
cmdTerbilang
|
|
Caption
|
&Terbilang
|
CommandButton2
|
Name
|
cmdExit
|
|
Caption
|
E&xit
|
Kemudian
tambahkan sebuah modul dengan cara klik kanan pada Project Explorer dan pada
menu yang muncul pilih Add > Module. Bandingkan dengan gambar 2.
Pada
module baru tersebut tambahkan kode program seperti disajikan pada listing 1.
Kemudian
klik ganda tombol Terbilang dan tambahkan kode program seperti disajikan pada
listing 2.
Langkah
terakhir, klik ganda tombol Exit dan tambahkan kode program seperti disajikan
pada listing 3.
Hasil
eksekusi program tersebut ditampilkan pada gambar 3. Masukkan suatu angka pada
kotak teks Angka, klik tombol Terbilang, teks terbilang dari angka tersebut
akan muncul pada kotak teks Terbilang.
Listing 1. Fungsi terbilang
Public Function Terbilang(x As
Double) As String
Dim tampung As
Double
Dim teks As
String
Dim bagian As
String
Dim i As
Integer
Dim tanda As
Boolean
Dim letak(5)
letak(1) =
"ribu "
letak(2) =
"juta "
letak(3) =
"milyar "
letak(4) =
"trilyun "
If (x = 0)
Then
Terbilang = "nol"
Exit Function
End If
If (x <
2000) Then
tanda = True
End If
teks =
""
If (x >=
1E+15) Then
Terbilang = "Nilai terlalu besar"
Exit Function
End If
For i = 4 To 1
Step -1
tampung = Int(x / (10 ^ (3 * i)))
If (tampung > 0) Then
bagian = ratusan(tampung, tanda)
teks = teks & bagian & letak(i)
End If
x = x - tampung * (10 ^ (3 * i))
Next
teks = teks
& ratusan(x, False)
Terbilang =
teks
End Function
Function ratusan(ByVal y As
Double, ByVal flag As Boolean) As String
Dim tmp As
Double
Dim bilang As
String
Dim bag As
String
Dim j As
Integer
Dim angka(9)
angka(1) =
"se"
angka(2) =
"dua "
angka(3) =
"tiga "
angka(4) =
"empat "
angka(5) =
"lima "
angka(6) =
"enam "
angka(7) =
"tujuh "
angka(8) =
"delapan "
angka(9) =
"sembilan "
Dim posisi(2)
posisi(1) =
"puluh "
posisi(2) =
"ratus "
bilang =
""
For j = 2 To 1
Step -1
tmp
= Int(y / (10 ^ j))
If (tmp > 0) Then
bag = angka(tmp)
If (j = 1 And tmp = 1) Then
y = y - tmp * 10 ^ j
If (y >= 1) Then
posisi(j) = "belas "
Else
angka(y) = "se"
End If
bilang = bilang & angka(y) & posisi(j)
ratusan = bilang
Exit Function
Else
bilang = bilang & bag & posisi(j)
End If
End If
y = y - tmp * 10 ^ j
Next
If (flag =
False) Then
angka(1) = "satu "
End If
bilang =
bilang & angka(y)
ratusan =
bilang
End Function
|
Listing 2. Event click pada
cmdTerbilang
Private Sub
cmdTerbilang_Click()
Dim angka As
Double
Dim teks As
String
angka =
Val(txtAngka.Text)
teks =
Terbilang(angka)
txtTerbilang.Text
= teks
End Sub
|
Listing 3. Event click pada
cmdExit
Private Sub cmdExit_Click()
End
End Sub
|
Tidak ada komentar:
Posting Komentar