Answered # convert amount to words

vinnijain bk_bhupendra -2 vinnijain avirag 10 DdoubleD 315 Featured Reply avirag 10 kumarvarshadr Hey, so I wanna ask how I need to create a method who will remove word if in that word is 2 same chars. Example: "Potato" in this word there is a 2 "o" chars so this word will need to be removed. "Forum" in this word there is no ...

Hi I'm having a problem implementing a mini shopping cart drop down in the header to show the user all the products they have in their shopping cart. It seems the only solution for this is Ajax, and I've looked all over and can't find anything that I could possibly ...

0

hi,

can any one tell me how to i convert amount(in digitts) to word.

thanks in advance

You can try the following code:

```
public string NumberToText(int number)
{
if (number == 0) return "Zero";
if (number == -2147483648) return "Minus Two Hundred and Fourteen Crore Seventy Four Lakh Eighty Three Thousand Six Hundred and Forty Eight";
int[] num = new int[4];
int first = 0;
int u, h, t;
System.Text.StringBuilder sb = new System.Text.StringBuilder();
if (number < 0)
{
sb.Append("Minus ");
number = -number;
}
string[] words0 = {"" ,"One ", "Two ", "Three ", "Four ",
"Five " ,"Six ", "Seven ", "Eight ", "Nine "};
string[] words1 = {"Ten ", "Eleven ", "Twelve ", "Thirteen ", "Fourteen ",
"Fifteen ","Sixteen ","Seventeen ","Eighteen ", "Nineteen "};
string[] words2 = {"Twenty ", "Thirty ", "Forty ", "Fifty ", "Sixty ",
"Seventy ","Eighty ", "Ninety "};
string[] words3 = {"Thousand ", "Lakh ","Crore "};
num[0] = number % 1000; // units
num[1] = number / 1000;
num[2] = number / 100000;
num[1] = num[1] - 100 * num[2]; // thousands
num[3] = number / 10000000; // crores
num[2] = num[2] - 100 * num[3]; // lakhs
for(int i = 3; i > 0 ; i--)
{
if (num[i] != 0)
{
first = i;
break;
}
}
for(int i = first ; i >= 0 ; i--)
{
if (num[i] == 0) continue;
u = num[i] % 10; // ones
t = num[i] / 10;
h = num[i] / 100; // hundreds
t = t - 10 * h; // tens
if (h > 0) sb.Append(words0[h] + "Hundred ");
if (u > 0 || t > 0)
{
if (h > 0 || i == 0) sb.Append("and ");
if (t == 0)
sb.Append(words0[u]);
else if (t == 1)
sb.Append(words1[u]);
else
sb.Append(words2[t-2] + words0[u]);
}
if (i != 0) sb.Append(words3[i-1]);
}
return sb.ToString().TrimEnd();
}
```

If it helps,then mark this thread as solved

-1

try this code

```
public string NumberToText(int number)
{
if (number == 0) return "Zero";
if (number == -2147483648) return "Minus Two Hundred and Fourteen Crore Seventy Four Lakh Eighty Three Thousand Six Hundred and Forty Eight";
int[] num = new int[4];
int first = 0;
int u, h, t;
System.Text.StringBuilder sb = new System.Text.StringBuilder();
if (number < 0)
{
sb.Append("Minus ");
number = -number;
}
string[] words0 = {"" ,"One ", "Two ", "Three ", "Four ",
"Five " ,"Six ", "Seven ", "Eight ", "Nine "};
string[] words1 = {"Ten ", "Eleven ", "Twelve ", "Thirteen ", "Fourteen ",
"Fifteen ","Sixteen ","Seventeen ","Eighteen ", "Nineteen "};
string[] words2 = {"Twenty ", "Thirty ", "Forty ", "Fifty ", "Sixty ",
"Seventy ","Eighty ", "Ninety "};
string[] words3 = {"Thousand ", "Lakh ","Crore "};
num[0] = number % 1000; // units
num[1] = number / 1000;
num[2] = number / 100000;
num[1] = num[1] - 100 * num[2]; // thousands
num[3] = number / 10000000; // crores
num[2] = num[2] - 100 * num[3]; // lakhs
for(int i = 3; i > 0 ; i--)
{
if (num[i] != 0)
{
first = i;
break;
}
}
for(int i = first ; i >= 0 ; i--)
{
if (num[i] == 0) continue;
u = num[i] % 10; // ones
t = num[i] / 10;
h = num[i] / 100; // hundreds
t = t - 10 * h; // tens
if (h > 0) sb.Append(words0[h] + "Hundred ");
if (u > 0 || t > 0)
{
if (h > 0 || i == 0) sb.Append("and ");
if (t == 0)
sb.Append(words0[u]);
else if (t == 1)
sb.Append(words1[u]);
else
sb.Append(words2[t-2] + words0[u]);
}
if (i != 0) sb.Append(words3[i-1]);
}
return sb.ToString().TrimEnd();
}
```

0

bk_bhupendra ,I think you must make your efforts .Copying others code and pasting is wrong..............

0

hi,

can any one tell me how to i convert amount(in digitts) to word.

thanks in advance

using the code which vinnijain is given you, you can also try modifying the same for millions and billions also.............:)

0

You could store all the numeric semantics in a dictionary and then recursively call a translator method (as needed) that whittles it down from most significant to least signicant digits... For example:

```
Dictionary<uint, string> lookupWord = new Dictionary<uint, string>();
public void Init()
{
lookupWord.Add(0, "siro");
lookupWord.Add(1, "uno");
lookupWord.Add(2, "dos");
lookupWord.Add(3, "tres");
lookupWord.Add(4, "kwatro");
...
lookupWord.Add(800, "otsosyentos");
lookupWord.Add(900, "nobesyentos");
lookupWord.Add(1000, "un mil");
lookupWord.Add(1000000, "un milyon");
lookupWord.Add(1000000000, "un bilyon");
}
private string ConvertNumToText(uint n)
{
if (
(n < 20) ||
(n < 100 && (n % 10 == 0)) ||
(n < 1000 && n % 100 == 0) ||
(n == 1000) ||
(n == 1000000) ||
(n == 1000000000)
)
{
return lookupWord[n];
}
else if (n < 100)
{
uint tens = n / 10;
uint ones = n % 10;
if (tens != 2)
return lookupWord[10 * tens] + "-i-" + lookupWord[ones];
else
return lookupWord[10 * tens] + "-" + lookupWord[ones];
}
...
else if (n < 2000000000)
return "un bilyon " + ConvertNumToText(n - 1000000000);
else
{
uint billions = n / 1000000000;
if (n % 1000000000 != 0)
return ConvertNumToText(billions) + " bilyon " + ConvertNumToText(n - 1000000000 * billions);
else
return ConvertNumToText(billions) + " bilyon";
}
}
```

The above sample demonstrates working with the Cebuano language, but you can easily see the logic in making the proper interpretation to form a grammatical representation of a number.

1

hi,

can any one tell me how to i convert amount(in digitts) to word.

thanks in advance

Well Kool.net.......

Kindly mark this thread as solved if your problem is solved now..........:)

0

bk_bhupendra , the code is fine but for single digit or two digits it is showing the word "and" before the converted text. Please try to work on this.

Ramesh Kumar

This question has already been answered. Start a new discussion instead.

Recommended Articles

I don’t want at this stage work on a big separate project as I've already got plenty ...