Mungkin para teman-teman developer VB .Net diminta oleh perusahaannya untuk membuat fungsi terbilang yang akan tercetak apabila di Print.
Berikut ini kode fungsi terbilang menggunakan VB .Net
- - Buatlah sebuah module
- - Ketikkan kode dibawah
Fungsi Ambil Koma
1: Public Function AmbilSblmKoma(ByVal NilaiNya As Decimal) As Decimal
2: Dim hSl As Decimal
3: 4: hSl = Left(NilaiNya, InStr(NilaiNya, ",") - 1)
5: Return hSl
6: End Function
Fungsi Konversi
1: Option Explicit On
2: Module module_terbilang
3: 4: Public Function TERBILANG(ByVal x As Double) As String
5: Dim tampung As Double
6: Dim teks As String
7: Dim bagian As String
8: Dim i As Integer
9: Dim tanda As Boolean
10: 11: Dim letak(5)
12: letak(1) = "RIBU "
13: letak(2) = "JUTA "
14: letak(3) = "MILYAR "
15: letak(4) = "TRILYUN "
16: 17: If (x < 0) Then
18: TERBILANG = ""
19: Exit Function
20: End If
21: 22: If (x = 0) Then
23: TERBILANG = "NOL"
24: Exit Function
25: End If
26: 27: If (x < 2000) Then
28: tanda = True
29: End If
30: teks = ""
31: 32: If (x >= 1.0E+15) Then
33: TERBILANG = "NILAI TERLALU BESAR"
34: Exit Function
35: End If
36: 37: For i = 4 To 1 Step -1
38: tampung = Int(x / (10 ^ (3 * i))) 39: If (tampung > 0) Then
40: bagian = ratusan(tampung, tanda) 41: teks = teks & bagian & letak(i) 42: End If
43: x = x - tampung * (10 ^ (3 * i)) 44: Next
45: 46: teks = teks & ratusan(x, False)
47: TERBILANG = teks & "RUPIAH"
48: End Function
49: 50: Function ratusan(ByVal y As Double, ByVal flag As Boolean) As String
51: Dim tmp As Double
52: Dim bilang As String
53: Dim bag As String
54: Dim j As Integer
55: 56: Dim angka(9)
57: angka(1) = "SE"
58: angka(2) = "DUA "
59: angka(3) = "TIGA "
60: angka(4) = "EMPAT "
61: angka(5) = "LIMA "
62: angka(6) = "ENAM "
63: angka(7) = "TUJUH "
64: angka(8) = "DELAPAN "
65: angka(9) = "SEMBILAN "
66: 67: Dim posisi(2)
68: posisi(1) = "PULUH "
69: posisi(2) = "RATUS "
70: bilang = ""
71: For j = 2 To 1 Step -1
72: tmp = Int(y / (10 ^ j)) 73: If (tmp > 0) Then
74: bag = angka(tmp) 75: If (j = 1 And tmp = 1) Then
76: y = y - tmp * 10 ^ j 77: If (y >= 1) Then
78: posisi(j) = "BELAS "
79: Else
80: angka(y) = "SE"
81: End If
82: bilang = bilang & angka(y) & posisi(j) 83: ratusan = bilang 84: Exit Function
85: Else
86: bilang = bilang & bag & posisi(j) 87: End If
88: End If
89: y = y - tmp * 10 ^ j 90: Next
91: 92: If (flag = False) Then
93: angka(1) = "SATU "
94: End If
95: bilang = bilang & angka(y) 96: ratusan = bilang 97: End Function
98: 99: End Module












0 Komentar
Post a Comment