Andri Gunawan's Blog

.NET Developer
See also: Other Geeks@INDC

Fungsi Terbilang untuk C# & VB.NET

public static string Terbilang(int x)

{

string[] bilangan = {"", "satu", "dua", "tiga", "empat", "lima",

"enam", "tujuh", "delapan", "sembilan", "sepuluh",

"sebelas"};

string temp = "";

 

if (x < 12)

{

temp = " " + bilangan[x];

}

else if (x < 20)

{

temp = Terbilang(x - 10).ToString() + " belas";

}

else if (x < 100)

{

temp = Terbilang(x / 10) + " puluh" + Terbilang(x % 10);

}

else if (x < 200)

{

temp = " seratus" + Terbilang(x - 100);

}

else if (x < 1000)

{

temp = Terbilang(x / 100) + " ratus" + Terbilang(x % 100);

}

else if (x < 2000)

{

temp = " seribu" + Terbilang(x - 1000);

}

else if (x < 1000000)

{

temp = Terbilang(x / 1000) + " ribu" + Terbilang(x % 1000);

}

else if (x < 1000000000)

{

temp = Terbilang(x / 1000000) + " juta" + Terbilang(x % 1000000);

}

 

return temp;

}

 

Public Function Terbilang(ByVal x As Integer) As String

Dim bilangan As String() = {"", "satu", "dua", "tiga", "empat", "lima",

"enam", "tujuh", "delapan", "sembilan", "sepuluh", "sebelas"}

Dim temp As String = ""

 

If x < 12 Then

temp = " " + bilangan(x)

Else If x < 20 Then

temp = Terbilang(x - 10).ToString + " belas"

Else If x < 100 Then

temp = Terbilang(x / 10) + " puluh" + Terbilang(x Mod 10)

Else If x < 200 Then

temp = " seratus" + Terbilang(x - 100)

Else If x < 1000 Then

temp = Terbilang(x / 100) + " ratus" + Terbilang(x Mod 100)

Else If x < 2000 Then

temp = " seribu" + Terbilang(x - 1000)

Else If x < 1000000 Then

temp = Terbilang(x / 1000) + " ribu" + Terbilang(x Mod 1000)

Else If x < 1000000000 Then

temp = Terbilang(x / 1000000) + " juta" + Terbilang(x Mod 1000000)

End If

 

Return temp

End Function

Share this post: | | | |
Posted: Sep 10 2005, 04:06 AM by andri | with 4 comment(s)
Filed under: ,

Comments

andri said:

Weksss gw baru tahu tuh
oh ya gimana cara pake tuh function kalo di Web ?????
apa capture dari textbox langsung ???
# September 12, 2005 10:25 PM

andri said:

Joul: tinggal panggil fungsinya. Contoh:

txtHasil.Value = Terbilang((int) txtAngka.Value)

txtHasil.Value = Terbilang(CInt(txtAngka.Value))
# September 15, 2005 8:27 AM

andri said:

untuk 348450 hasilnya beda ya ?
# July 12, 2006 5:41 AM

andri said:

Gimana kalo nilai yang ingin idubah tersebut adalah decimal (paling maksimal dua angka dibelakang koma)......
# September 5, 2006 9:44 PM