hi....
Iam new to programming in C#,have just started programming.Can anyone tell me how to write code to convert numbers in to words...for istance if you put 1500 as input,the output should be "Fifteen Hundred.

Also i need a C# Code to check if an input string is an identifier or not.
Can anyone please help me out with these programs???
thanks,
unseenedges

Recommended Answers

Try the following code............

class NumberToWordsConvertor1
    {
        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; …
Jump to Post

All 2 Replies

Try the following code............

class NumberToWordsConvertor1
    {
        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(); 
} 

} // end class 

    }
Be a part of the DaniWeb community

We're a friendly, industry-focused community of 1.19 million developers, IT pros, digital marketers, and technology enthusiasts learning and sharing knowledge.