ellapt

5.11.NumberToText

Dec 7th, 2012
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.19 KB | None | 0 0
  1. using System;
  2. class NumberToText
  3. {
  4. static void Main()
  5. {
  6. int num;
  7. int units;
  8. int tens;
  9. int hundreds;
  10. string numString;
  11. string unStr = "";
  12. string tenStr = "";
  13. string hunStr = "";
  14. string andStr = "and";
  15. string htSpace1 = " ";
  16. string htSpace2 = " ";
  17. string tuSpace = " ";
  18. do
  19. {
  20. Console.Write("Please enter a number (from 0 to 999): ");
  21. }
  22. while (!int.TryParse(numString = Console.ReadLine(), out num) || num > 999);
  23. Console.WriteLine();
  24. units = num % 10;
  25. tens = (num/10) % 10;
  26. hundreds = (num/100) % 10;
  27. if (hundreds == 0)
  28. {
  29. htSpace1 = htSpace2 = andStr = "";
  30. }
  31. if (tens == 0)
  32. {
  33. tuSpace = "";
  34. if (hundreds == 0 || units==0)
  35. {
  36. andStr = "";
  37. }
  38. }
  39. if (units == 0)
  40. {
  41. tuSpace = "";
  42. if (hundreds == 0)
  43. {
  44. htSpace1 = htSpace2 = andStr = "";
  45. }
  46. if (tens == 0)
  47. {
  48. htSpace1 = htSpace2 = andStr = "";
  49. }
  50. }
  51. switch (hundreds)
  52. {
  53. case 0:
  54. andStr = "";
  55. break;
  56. case 1:
  57. hunStr= "One Hundred";
  58. break;
  59. case 2:
  60. hunStr = "Two Hundred";
  61. break;
  62. case 3:
  63. hunStr = "Three Hundred";
  64. break;
  65. case 4:
  66. hunStr = "Four Hundred";
  67. break;
  68. case 5:
  69. hunStr = "Five Hundred";
  70. break;
  71. case 6:
  72. hunStr = "Six Hundred";
  73. break;
  74. case 7:
  75. hunStr = "Seven Hundred";
  76. break;
  77. case 8:
  78. hunStr = "Eight Hundred";
  79. break;
  80. case 9:
  81. hunStr = "Nine Hundred";
  82. break;
  83. }
  84. switch (tens)
  85. {
  86. case 1:
  87. tenStr = "";
  88. tuSpace = "";
  89. switch (units)
  90. {
  91. case 1:
  92. unStr = "Eleven";
  93. break;
  94. case 2:
  95. unStr = "Twelve";
  96. break;
  97. case 3:
  98. unStr = "Thirteen";
  99. break;
  100. case 4:
  101. unStr = "Fourteen";
  102. break;
  103. case 5:
  104. unStr = "Fifteen";
  105. break;
  106. case 6:
  107. unStr = "Sixteen";
  108. break;
  109. case 7:
  110. unStr = "Seventeen";
  111. break;
  112. case 8:
  113. unStr = "Eighteen";
  114. break;
  115. case 9:
  116. unStr = "Nineteen";
  117. break;
  118. default:
  119. break;
  120. }
  121. break;
  122. case 2:
  123. tenStr = "Twenty";
  124. break;
  125. case 3:
  126. tenStr = "Thirty";
  127. break;
  128. case 4:
  129. tenStr = "Fourty";
  130. break;
  131. case 5:
  132. tenStr = "Fifty";
  133. break;
  134. case 6:
  135. tenStr = "Sixty";
  136. break;
  137. case 7:
  138. tenStr = "Seventy";
  139. break;
  140. case 8:
  141. tenStr = "Eighty";
  142. break;
  143. case 9:
  144. tenStr = "Ninety";
  145. break;
  146. default:
  147. break;
  148. }
  149. if (tens > 1 || tens==0)
  150. {
  151. switch (units)
  152. {
  153. case 1:
  154. unStr = "One";
  155. break;
  156. case 2:
  157. unStr = "Two";
  158. break;
  159. case 3:
  160. unStr = "Three";
  161. break;
  162. case 4:
  163. unStr = "Four";
  164. break;
  165. case 5:
  166. unStr = "Five";
  167. break;
  168. case 6:
  169. unStr = "Six";
  170. break;
  171. case 7:
  172. unStr = "Seven";
  173. break;
  174. case 8:
  175. unStr = "Eight";
  176. break;
  177. case 9:
  178. unStr = "Nine";
  179. break;
  180. }
  181. }
  182. if (num == 0)
  183. {
  184. Console.WriteLine("The English for {0} is \"Zero\".", num);
  185. Console.WriteLine();
  186. }
  187. else
  188. {
  189. numString = hunStr + htSpace1 + andStr + htSpace2 + tenStr + tuSpace + unStr;
  190. Console.WriteLine("The English for {0} is \"{1}\".", num, numString);
  191. Console.WriteLine();
  192. }
  193. }
  194. }
Advertisement
Add Comment
Please, Sign In to add comment