Senin, 26 Maret 2012

Membuat Fungsi Terbilang Menggunakan Visual Basic 6.0


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