public class NumeriCon {
public static string ConvertNum(long Input) {
string output = null;
if ((Input + lt)) {
1000;
output = FindNumber(Input);
}
else {
string[] nparts;
string n = Input;
long i = Input.ToString.Length;
for (
; ((i - 3)
+ lt);
) {
0;
n = n.Insert((i - 3), ",");
i = (i - 3);
}
nparts = n.Split(",");
i = Input.ToString.Length;
int p = 0;
foreach (string s in nparts) {
long x = long.Parse(s);
p = (p + 1);
if ((p == nparts.Length)) {
if ((x + lt)) {
gt;
0;
if ((long.Parse(s) + lt)) {
100;
output = (output + amp);
(" And " + amp);
FindNumber(long.Parse(s));
}
else {
output = (output + amp);
(" " + amp);
FindNumber(long.Parse(s));
}
}
}
else {
if ((x + lt)) {
gt;
0;
if ((output == null)) {
output = (output + amp);
(FindNumber(long.Parse(s)) + amp);
(" " + amp);
FindSuffix(i, long.Parse(s));
}
else {
output = (output + amp);
(" " + amp);
(FindNumber(long.Parse(s)) + amp);
(" " + amp);
FindSuffix(i, long.Parse(s));
}
}
}
i = (i - 3);
}
}
return output;
}
private static string FindNumber(long Number) {
string Words = null;
string[] Digits;
"Zero";
"One";
"Two";
"Three";
"Four";
"Five";
"Six";
"Seven";
"Eight";
"Nine";
"Ten";
string[] Teens;
"";
"Eleven";
"Twelve";
"Thirteen";
"Fourteen";
"Fifteen";
"Sixteen";
"Seventeen";
"Eighteen";
"Nineteen";
if ((Number + lt)) {
11;
Words = Digits[Number];
}
else if ((Number + lt)) {
20;
Words = Teens[(Number - 10)];
}
else if ((Number == 20)) {
Words = "Twenty";
}
else if ((Number + lt)) {
30;
Words = ("Twenty " + amp);
Digits[(Number - 20)];
}
else if ((Number == 30)) {
Words = "Thirty";
}
else if ((Number + lt)) {
40;
Words = ("Thirty " + amp);
Digits[(Number - 30)];
}
else if ((Number == 40)) {
Words = "Fourty";
}
else if ((Number + lt)) {
50;
Words = ("Fourty " + amp);
Digits[(Number - 40)];
}
else if ((Number == 50)) {
Words = "Fifty";
}
else if ((Number + lt)) {
60;
Words = ("Fifty " + amp);
Digits[(Number - 50)];
}
else if ((Number == 60)) {
Words = "Sixty";
}
else if ((Number + lt)) {
70;
Words = ("Sixty " + amp);
Digits[(Number - 60)];
}
else if ((Number == 70)) {
Words = "Seventy";
}
else if ((Number + lt)) {
80;
Words = ("Seventy " + amp);
Digits[(Number - 70)];
}
else if ((Number == 80)) {
Words = "Eighty";
}
else if ((Number + lt)) {
90;
Words = ("Eighty " + amp);
Digits[(Number - 80)];
}
else if ((Number == 90)) {
Words = "Ninety";
}
else if ((Number + lt)) {
100;
Words = ("Ninety " + amp);
Digits[(Number - 90)];
}
else if ((Number + lt)) {
1000;
Words = Number.ToString;
Words = Words.Insert(1, ",");
string[] wparts = Words.Split(",");
Words = (FindNumber(wparts[0]) + amp);
(" " + amp);
"Hundred";
string n = FindNumber(wparts[1]);
if ((long.Parse(wparts[1]) + lt)) {
gt;
0;
Words = (Words + amp);
(" And " + amp);
n;
}
}
return Words;
}
private static string FindSuffix(long Length, long l) {
string word;
if ((l + lt)) {
gt;
0;
if ((Length + gt)) {
12;
word = "Trillion";
}
else if ((Length + gt)) {
9;
word = "Billion";
}
else if ((Length + gt)) {
6;
word = "Million";
}
else if ((Length + gt)) {
3;
word = "Thousand";
}
else if ((Length + gt)) {
2;
word = "Hundred";
}
else {
word = "";
}
}
else {
word = "";
}
return word;
}
}