Advertisement
syssboxx

Number To Text

Jun 3rd, 2013
47
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 6.46 KB | None | 0 0
  1. //* Write a program that converts a number in the range [0...999] to a text corresponding to its English pronunciation. Examples:
  2. //  0  "Zero"
  3. //  273  "Two hundred seventy three"
  4. //  400  "Four hundred"
  5. //  501  "Five hundred and one"
  6. //  711  "Seven hundred and eleven"
  7.  
  8.  
  9. using System;
  10.  
  11. class ConvertNumberToText
  12. {
  13.     static void Main()
  14.     {
  15.         Console.WriteLine("Enter a number in the range [0...999] :");
  16.         ushort number;
  17.        
  18.         while (!ushort.TryParse(Console.ReadLine(),out number)||(number>999))
  19.         {
  20.             Console.WriteLine("Enter a valid number in the range [0...999]");
  21.         }
  22.  
  23.         int digit1 = number % 10;
  24.         int digit2 = (number / 10)%10;
  25.         int digit3 = number / 100;
  26.        
  27.         Console.Write("The number is ");
  28.  
  29.         //numbers : 0-20
  30.         if (number<20 )
  31.         {
  32.             switch (number)
  33.             {
  34.                 case 0: Console.WriteLine("zero"); break;
  35.                 case 1: Console.WriteLine("one"); break;
  36.                 case 2: Console.WriteLine("two"); break;
  37.                 case 3: Console.WriteLine("three"); break;
  38.                 case 4: Console.WriteLine("four"); break;
  39.                 case 5: Console.WriteLine("five"); break;
  40.                 case 6: Console.WriteLine("six"); break;
  41.                 case 7: Console.WriteLine("seven"); break;
  42.                 case 8: Console.WriteLine("eight"); break;
  43.                 case 9: Console.WriteLine("nine"); break;
  44.                 case 10: Console.WriteLine("ten"); break;
  45.                 case 11: Console.WriteLine("eleven"); break;
  46.                 case 12: Console.WriteLine("twelve"); break;
  47.                 case 13: Console.WriteLine("thirteen"); break;
  48.                 case 14: Console.WriteLine("fourteen"); break;
  49.                 case 15: Console.WriteLine("fifteen"); break;
  50.                 case 16: Console.WriteLine("sixteen"); break;
  51.                 case 17: Console.WriteLine("seventeen"); break;
  52.                 case 18: Console.WriteLine("eighteen"); break;
  53.                 case 19: Console.WriteLine("ninetten"); break;
  54.                 default: Console.WriteLine("no such number"); break;
  55.  
  56.             }
  57.         }
  58.         //numbers : 21-999
  59.         else if ((number>=20)&&(number<=999))
  60.         {
  61.             if (digit3 != 0)
  62.             {
  63.  
  64.                 switch (digit3)
  65.                 {
  66.                     case 1: Console.Write("one hundred "); break;
  67.                     case 2: Console.Write("two hundred "); break;
  68.                     case 3: Console.Write("three hundred "); break;
  69.                     case 4: Console.Write("four hundred "); break;
  70.                     case 5: Console.Write("five hundred "); break;
  71.                     case 6: Console.Write("six hundred "); break;
  72.                     case 7: Console.Write("seven hundred "); break;
  73.                     case 8: Console.Write("eight hundred "); break;
  74.                     case 9: Console.Write("nine hundred "); break;
  75.                     default: Console.WriteLine("no such number"); break;
  76.                 }
  77.              
  78.             }
  79.  
  80.             if ((digit2 != 1) && (digit2 != 0))
  81.             {
  82.                 Console.Write("and ");
  83.                 switch (digit2)
  84.                     {
  85.                         //case 1: break;
  86.                         case 2: Console.Write("twenty"); break;
  87.                         case 3: Console.Write("thirty"); break;
  88.                         case 4: Console.Write("forty"); break;
  89.                         case 5: Console.Write("fifty"); break;
  90.                         case 6: Console.Write("sixty"); break;
  91.                         case 7: Console.Write("seventy"); break;
  92.                         case 8: Console.Write("eighty"); break;
  93.                         case 9: Console.Write("ninety"); break;
  94.                         default: Console.Write("no such number"); break;
  95.                     }
  96.                 if (digit1 != 0)
  97.                 {
  98.                     switch (digit1)
  99.                     {
  100.                         case 1: Console.Write(" and one"); break;
  101.                         case 2: Console.Write("-two"); break;
  102.                         case 3: Console.Write("-three"); break;
  103.                         case 4: Console.Write("-four"); break;
  104.                         case 5: Console.Write("-five"); break;
  105.                         case 6: Console.Write("-six"); break;
  106.                         case 7: Console.Write("-seven"); break;
  107.                         case 8: Console.Write("-eight"); break;
  108.                         case 9: Console.Write("-nine"); break;
  109.                         default: Console.WriteLine("no such number"); break;
  110.                     }
  111.                 }
  112.             }
  113.            
  114.             else if (digit2==1)
  115.             {
  116.                 Console.Write(" and ");
  117.                 switch (digit1)
  118.                 {
  119.                     case 0: Console.Write("ten"); break;
  120.                     case 1: Console.Write("eleven"); break;
  121.                     case 2: Console.Write("twelve"); break;
  122.                     case 3: Console.Write("thirteen"); break;
  123.                     case 4: Console.Write("forteen"); break;
  124.                     case 5: Console.Write("fifteen"); break;
  125.                     case 6: Console.Write("sixteen"); break;
  126.                     case 7: Console.Write("seventeen"); break;
  127.                     case 8: Console.Write("eighteen"); break;
  128.                     case 9: Console.Write("nineteen"); break;
  129.                     default: Console.WriteLine("no such number"); break;
  130.                 }
  131.             }
  132.             else if (digit2 == 0)
  133.             {
  134.                 //Console.Write(" and ");
  135.                 switch (digit1)
  136.                 {
  137.                     case 1: Console.Write(" and one"); break;
  138.                     case 2: Console.Write(" and two"); break;
  139.                     case 3: Console.Write(" and three"); break;
  140.                     case 4: Console.Write(" and four"); break;
  141.                     case 5: Console.Write(" and five"); break;
  142.                     case 6: Console.Write(" and six"); break;
  143.                     case 7: Console.Write(" and seven"); break;
  144.                     case 8: Console.Write(" and eight"); break;
  145.                     case 9: Console.Write(" and nine"); break;
  146.                     default: Console.WriteLine("no such number"); break;
  147.                 }
  148.             }
  149.            
  150.             Console.WriteLine();      
  151.         }
  152.        
  153.     }
  154. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement