Assalamu'alaikum.......
Pagi semua......menjelang sahur di bulan Ramadhan ini, dari pada bengong.....selain melaksanakan ibadah seperti shalat dll,,,,,mari kita tambah wawasan, tambah ilmu, berbagi pengetahuan, pengalaman yang manfaat kawan..... Insya Allah dapat pahala dan mudah-mudahan dilipat gandakan pahala kita semua, Amin.....
Langsung saja kawan, kali ini saya mau share tentang gimana sih cara menerjemahkan angka ke huruf? Kalian pasti sering lihat di aplikasi kasir Alfamart, Indomart atau lainnya ketika melakukan transaksi di layar kecil muncul nominal dan juga diterjemahkan kedalam huruf.
Hemb.......gimana cara bikinnya? Saya coba aplikasikan kedalam project dengan VB.NET 2008, mari kita simak bersama.
Pertama, siapkan 1 form saja untuk percobaan kali ini, dengan properti sebagai berikut :
Kira-kira seperti itu desain formnya, boleh kalian modif sesuka kalian tanpa ada yang melarang.
Kedua, setelah proses desain formnya sudah selesai selanjutnya kita masuk ke coding dari project kita tadi, bisa di cek dibawah ini :
Pagi semua......menjelang sahur di bulan Ramadhan ini, dari pada bengong.....selain melaksanakan ibadah seperti shalat dll,,,,,mari kita tambah wawasan, tambah ilmu, berbagi pengetahuan, pengalaman yang manfaat kawan..... Insya Allah dapat pahala dan mudah-mudahan dilipat gandakan pahala kita semua, Amin.....
Langsung saja kawan, kali ini saya mau share tentang gimana sih cara menerjemahkan angka ke huruf? Kalian pasti sering lihat di aplikasi kasir Alfamart, Indomart atau lainnya ketika melakukan transaksi di layar kecil muncul nominal dan juga diterjemahkan kedalam huruf.
Hemb.......gimana cara bikinnya? Saya coba aplikasikan kedalam project dengan VB.NET 2008, mari kita simak bersama.
Pertama, siapkan 1 form saja untuk percobaan kali ini, dengan properti sebagai berikut :
Gbr 1 Sumber Koleksi Pribadi |
Kedua, setelah proses desain formnya sudah selesai selanjutnya kita masuk ke coding dari project kita tadi, bisa di cek dibawah ini :
Public Class Form1
Dim myNum As String
Dim numGroup As Integer
#Region "FungsiPembilang"
Public Function Terbilang(ByVal nilai As Long) As String
Dim bilangan As String() = {"", "SATU", "DUA", "TIGA", "EMPAT", "LIMA", _
"ENAM", "TUJUH", "DELAPAN", "SEMBILAN", "SEPULUH", "SEBELAS"}
If nilai < 12 Then
Return " " & bilangan(nilai)
ElseIf nilai < 20 Then
Return Terbilang(nilai - 10) & " BELAS"
ElseIf nilai < 100 Then
Return (Terbilang(CInt((nilai \ 10))) & " PULUH") + Terbilang(nilai Mod 10)
ElseIf nilai < 200 Then
Return " SERATUS" & Terbilang(nilai - 100)
ElseIf nilai < 1000 Then
Return (Terbilang(CInt((nilai \ 100))) & " RATUS") + Terbilang(nilai Mod 100)
ElseIf nilai < 2000 Then
Return " SERIBU" & Terbilang(nilai - 1000)
ElseIf nilai < 1000000 Then
Return (Terbilang(CInt((nilai \ 1000))) & "RIBU") + Terbilang(nilai Mod 1000)
ElseIf nilai < 1000000000 Then
Return (Terbilang(CInt((nilai \ 1000000))) & " JUTA") + Terbilang(nilai Mod 1000000)
ElseIf nilai < 1000000000000 Then
Return (Terbilang(CInt((nilai \ 1000000000))) & " MILYAR") + Terbilang(nilai Mod 1000000000)
ElseIf nilai < 1000000000000000 Then
Return (Terbilang(CInt((nilai \ 1000000000000))) & " TRILYUN") + Terbilang(nilai Mod 1000000000000)
Else
Return ""
End If
End Function
#End Region
Sub Pembilang_Form()
myNum = TextBox1.Text
myNum = myNum.PadLeft(myNum.Length + (numGroup - (myNum.Length Mod numGroup)), "0")
TextBox2.Text = ""
TextBox2.Text = Terbilang(myNum)
End Sub
Private Sub btnProses_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnProses.Click
If TextBox1.Text = "" Then
MessageBox.Show("Mana angkanya boss?", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
TextBox1.Focus()
Else
Call Pembilang_Form()
TextBox1.Focus()
End If
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
numGroup = 3
End Sub
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
'Ini kode yang mengharuskan kita untuk memasukan hanya angka saja,
If Not ((e.KeyChar >= "0" And e.KeyChar <= "9") Or e.KeyChar = vbBack) Then e.Handled() = True
End Sub
Private Sub btnBatal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBatal.Click
TextBox1.Clear()
TextBox2.Clear()
TextBox1.Focus()
End Sub
End Class
Dim myNum As String
Dim numGroup As Integer
#Region "FungsiPembilang"
Public Function Terbilang(ByVal nilai As Long) As String
Dim bilangan As String() = {"", "SATU", "DUA", "TIGA", "EMPAT", "LIMA", _
"ENAM", "TUJUH", "DELAPAN", "SEMBILAN", "SEPULUH", "SEBELAS"}
If nilai < 12 Then
Return " " & bilangan(nilai)
ElseIf nilai < 20 Then
Return Terbilang(nilai - 10) & " BELAS"
ElseIf nilai < 100 Then
Return (Terbilang(CInt((nilai \ 10))) & " PULUH") + Terbilang(nilai Mod 10)
ElseIf nilai < 200 Then
Return " SERATUS" & Terbilang(nilai - 100)
ElseIf nilai < 1000 Then
Return (Terbilang(CInt((nilai \ 100))) & " RATUS") + Terbilang(nilai Mod 100)
ElseIf nilai < 2000 Then
Return " SERIBU" & Terbilang(nilai - 1000)
ElseIf nilai < 1000000 Then
Return (Terbilang(CInt((nilai \ 1000))) & "RIBU") + Terbilang(nilai Mod 1000)
ElseIf nilai < 1000000000 Then
Return (Terbilang(CInt((nilai \ 1000000))) & " JUTA") + Terbilang(nilai Mod 1000000)
ElseIf nilai < 1000000000000 Then
Return (Terbilang(CInt((nilai \ 1000000000))) & " MILYAR") + Terbilang(nilai Mod 1000000000)
ElseIf nilai < 1000000000000000 Then
Return (Terbilang(CInt((nilai \ 1000000000000))) & " TRILYUN") + Terbilang(nilai Mod 1000000000000)
Else
Return ""
End If
End Function
#End Region
Sub Pembilang_Form()
myNum = TextBox1.Text
myNum = myNum.PadLeft(myNum.Length + (numGroup - (myNum.Length Mod numGroup)), "0")
TextBox2.Text = ""
TextBox2.Text = Terbilang(myNum)
End Sub
Private Sub btnProses_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnProses.Click
If TextBox1.Text = "" Then
MessageBox.Show("Mana angkanya boss?", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
TextBox1.Focus()
Else
Call Pembilang_Form()
TextBox1.Focus()
End If
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
numGroup = 3
End Sub
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
'Ini kode yang mengharuskan kita untuk memasukan hanya angka saja,
If Not ((e.KeyChar >= "0" And e.KeyChar <= "9") Or e.KeyChar = vbBack) Then e.Handled() = True
End Sub
Private Sub btnBatal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBatal.Click
TextBox1.Clear()
TextBox2.Clear()
TextBox1.Focus()
End Sub
End Class
Ketiga, mari kita jalankan projectnya buat test apakah sudah berfungsi atau belum.
Gbr 2 Sumber Koleksi Pribadi |
Wah.....ternyata berfungsi dengan baik nih kawan. Kalau kalian bagaimana? Ada kesulitan? Silahkan konsultasikan dengan saya lewat kolom komentar dibawah yah.......nanti saya akan respon secepat mungkin. Kalau ada yang minat dengan project yang sudah jadi, bisa cek link ini atau bisa request dengan mengisi kolom komentar di bawah ya.
Oke, cukup saja untuk tutorial kali ini ketemu lagi di tutorial-tutorial lainnya yang Insya Allah bermanfaat untuk saya dan untuk kawan-kawan semua.
Wassalamua'alaikum....
Comments
Post a Comment
Komentar spam, menyertakan link aktif dan alamat blog tidak akan muncul. Tidak semua pertanyaan sempat atau bisa dijawab. Thanks for visiting and the comment :)