Advertisement
Dilyana86

Untitled

Jun 7th, 2017
282
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.64 KB | None | 0 0
  1. using System;
  2.  
  3. namespace numbersToWords
  4. {
  5.     class Program
  6.     {
  7.         static void Main(string[] args)
  8.         {
  9.             long n = long.Parse(Console.ReadLine());
  10.             long number = 0;
  11.             for(long i=0; i<n; i++)
  12.             {
  13.                 number = long.Parse(Console.ReadLine());
  14.                 if (number < -999)
  15.                 {
  16.                     Console.WriteLine("too small");
  17.                 }
  18.                 else if (number > 999)
  19.                 {
  20.                     Console.WriteLine("too large");
  21.                 }
  22.                 else if ((number > 99 && number <= 999) || (number < -99 && number >= -999))
  23.                 {
  24.                     if (number < 0)
  25.                     {
  26.                         Console.Write("minus ");
  27.                         number *= -1;
  28.                     }
  29.                     LetterizeNumbers(number);
  30.                     Console.WriteLine();
  31.                 }
  32.             }
  33.         }
  34.  
  35.         private static void LetterizeNumbers(long number)
  36.         {
  37.             if (number % 10 == 0 && number / 10 % 10 == 0)
  38.             {
  39.                 PrintHundreds(number);
  40.             }
  41.             else if (number % 10 != 0 && number / 10 % 10 == 0)
  42.             {
  43.                 PrintHundredsAndUnits(number);
  44.             }
  45.             else if (number % 10 == 0 && number / 10 % 10 != 0)
  46.             {
  47.                 PrintHundredsAndTenth(number);
  48.             }
  49.             else if (number % 100 > 10 && number % 100 < 20)
  50.             {
  51.                 PrintHundredsTenthsUnits1020(number);
  52.             }
  53.             else
  54.             {
  55.                 PrintHundredsAndTenthAndUnit(number);
  56.             }
  57.         }
  58.  
  59.         private static void PrintHundredsAndTenthAndUnit(long number)
  60.         {
  61.             long tenth = number / 10 % 10;
  62.             PrintHundreds(number);
  63.             Console.Write(" and ");
  64.             switch (tenth)
  65.             {
  66.                 case 2: Console.Write("twenty"); break;
  67.                 case 3: Console.Write("thirty"); break;
  68.                 case 4: Console.Write("fourty"); break;
  69.                 case 5: Console.Write("fifty"); break;
  70.                 case 6: Console.Write("sixty"); break;
  71.                 case 7: Console.Write("seventy"); break;
  72.                 case 8: Console.Write("eighty"); break;
  73.                 case 9: Console.Write("ninety"); break;
  74.             }
  75.             Console.Write(" ");
  76.             PrintUnits(number);
  77.         }
  78.  
  79.         private static void PrintUnits(long number)
  80.         {
  81.             long units = number % 10;
  82.             switch (units)
  83.             {
  84.                 case 1: Console.Write("one"); break;
  85.                 case 2: Console.Write("two"); break;
  86.                 case 3: Console.Write("three"); break;
  87.                 case 4: Console.Write("four"); break;
  88.                 case 5: Console.Write("five"); break;
  89.                 case 6: Console.Write("six"); break;
  90.                 case 7: Console.Write("seven"); break;
  91.                 case 8: Console.Write("eight"); break;
  92.                 case 9: Console.Write("nine"); break;
  93.             }
  94.         }
  95.  
  96.         private static void PrintHundredsTenthsUnits1020(long number)
  97.         {
  98.             long tenth1020 = number % 100;
  99.             PrintHundreds(number);
  100.             Console.Write(" and ");
  101.             switch (tenth1020)
  102.             {
  103.                 case 11: Console.Write("eleven"); break;
  104.                 case 12: Console.Write("twelve"); break;
  105.                 case 13: Console.Write("thirteen"); break;
  106.                 case 14: Console.Write("fourteen"); break;
  107.                 case 15: Console.Write("fifteen"); break;
  108.                 case 16: Console.Write("sixteen"); break;
  109.                 case 17: Console.Write("seventeen"); break;
  110.                 case 18: Console.Write("eighteen"); break;
  111.                 case 19: Console.Write("nineteen"); break;
  112.             }
  113.         }
  114.  
  115.         private static void PrintHundredsAndTenth(long number)
  116.         {
  117.             long tenth = number / 10 % 10;
  118.             PrintHundreds(number);
  119.             Console.Write(" and ");
  120.             switch (tenth)
  121.             {
  122.                 case 1: Console.Write("ten"); break;
  123.                 case 2: Console.Write("twenty"); break;
  124.                 case 3: Console.Write("thirty"); break;
  125.                 case 4: Console.Write("fourty"); break;
  126.                 case 5: Console.Write("fifty"); break;
  127.                 case 6: Console.Write("sixty"); break;
  128.                 case 7: Console.Write("seventy"); break;
  129.                 case 8: Console.Write("eighty"); break;
  130.                 case 9: Console.Write("ninety"); break;
  131.             }
  132.         }
  133.  
  134.         private static void PrintHundredsAndUnits(long number)
  135.         {
  136.             long units = number % 10;
  137.             PrintHundreds(number);
  138.             Console.Write(" and ");
  139.             PrintUnits(number);
  140.         }
  141.  
  142.         private static void PrintHundreds(long number)
  143.         {
  144.             long hundreds = number / 100;
  145.             switch (hundreds)
  146.             {
  147.                 case 1: Console.Write("one-hundred"); break;
  148.                 case 2: Console.Write("two-hundred"); break;
  149.                 case 3: Console.Write("three-hundred"); break;
  150.                 case 4: Console.Write("four-hundred"); break;
  151.                 case 5: Console.Write("five-hundred"); break;
  152.                 case 6: Console.Write("six-hundred"); break;
  153.                 case 7: Console.Write("seven-hundred"); break;
  154.                 case 8: Console.Write("eight-hundred"); break;
  155.                 case 9: Console.Write("nine-hundred"); break;
  156.             }
  157.         }
  158.     }
  159. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement