Advertisement
BladeMechanics

Number Word

Nov 27th, 2017
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.59 KB | None | 0 0
  1. /*
  2. 1.  NUMBER WORD
  3. The program takes any 3-digit integer and display the number word.
  4. Sample run 1:
  5. Input   : 8
  6. Output  : eight
  7.  
  8. Sample run 2:
  9. Input   : 45
  10. Output  : forty five
  11.  
  12. Sample run 3:
  13. Input   : 511.
  14. Output  : five hundred eleven
  15. */
  16.  
  17. #include<stdio.h>
  18. #include<conio.h>
  19. #include<Windows.h>
  20. #include<stdlib.h>
  21. #include<time.h> //test
  22. #include<ctype.h>
  23.  
  24. void prompt(int i);
  25. void countdown(int time);
  26. void evaluation(int number);
  27. void hundreds(int number);
  28. void oneToNineNine(int number);
  29. void tenMulti(int number);
  30. void ones(int number);
  31.  
  32. void main()
  33. {
  34.     int number;
  35.     char choice;
  36.     while(1)
  37.     {
  38.         do
  39.         {
  40.         prompt(1);
  41.         prompt(4);
  42.         scanf_s("%d", &number);
  43.         if ((number>999)||(number<0))
  44.             {
  45.                 prompt(2);
  46.                 countdown(3);
  47.                 system("cls");
  48.             }
  49.         else break;
  50.         }while (1);
  51.     prompt(5);
  52.     evaluation(number);
  53.     prompt(3);
  54.     choice=toupper(_getch());
  55.     system("cls");
  56.     if (choice!='Y') break;
  57.     }/*
  58.     srand(unsigned(time));
  59.     int test;
  60.     printf("DEBUG: ENTER NUMBER OF RANDOM NUMBERS TO BE GENERATED");
  61.     scanf_s("%d", &test);
  62.     for(test;test;test--)
  63.     {
  64.     number=rand()%1000;
  65.     printf("\n%d\t",number);
  66.     evaluation(number);
  67.     }*/
  68. }
  69. void prompt(int i)
  70. {
  71.         switch(i)
  72.         {
  73.         case 1:
  74.             printf("\n\tPlease enter a number from 0-999.\n");
  75.             break;
  76.         case 2:
  77.             printf("\n\tInvalid entry. Please enter a number from 0-999\n");
  78.             break;
  79.         case 3:
  80.             printf("\n\n\tDo you want to continue? Press Y for yes or anything else to exit.");
  81.             break;
  82.         case 4:
  83.             printf("\n\tInput:\t");
  84.             break;
  85.         case 5:
  86.             printf("\tOutput:\t");
  87.             break;
  88.         }
  89. }
  90.  
  91. void evaluation(int number)
  92. {
  93.     int temp;
  94.     temp=number;
  95. if (temp<10) ones(temp);
  96. else if (temp<100)
  97.     oneToNineNine(temp);
  98. else
  99.     {
  100.     temp/=100;
  101.     if (temp>0)hundreds(temp);
  102.     number=number%100;
  103.     oneToNineNine(number);
  104.     }  
  105. }
  106.  
  107.  
  108. void ones(int number)
  109. {
  110.     switch(number)
  111.     {
  112.     case 0:
  113.         printf("zero");
  114.         break;
  115.     case 1:
  116.         printf("one");
  117.         break;
  118.     case 2:
  119.         printf("two");
  120.         break;
  121.     case 3:
  122.         printf("three");
  123.         break;
  124.     case 4:
  125.         printf("four");
  126.         break;
  127.     case 5:
  128.         printf("five");
  129.         break;
  130.     case 6:
  131.         printf("six");
  132.         break;
  133.     case 7:
  134.         printf("seven");
  135.         break;
  136.     case 8:
  137.         printf("eight");
  138.         break;
  139.     case 9:
  140.         printf("nine");
  141.     }
  142. }
  143.  
  144. void oneToNineNine(int number)
  145. {
  146.     int temp;
  147.  
  148.     if ((number<10)&&(number>0))
  149.     {
  150.         printf("and ");
  151.         ones(number);
  152.     }
  153.     else if (number<20)
  154.     {
  155.         switch(number)
  156.         {
  157.         case 10:
  158.             tenMulti(1);
  159.             break;
  160.         case 11:
  161.             printf("eleven");
  162.             break;
  163.         case 12:
  164.             printf("twelve");
  165.             break;
  166.         case 13:
  167.             printf("thirteen");
  168.             break;
  169.         case 14:
  170.             printf("fourteen");
  171.             break;
  172.         case 15:
  173.             printf("fifteen");
  174.             break;
  175.         case 16:
  176.             printf("sixteen");
  177.             break;
  178.         case 17:
  179.             printf("seventeen");
  180.             break;
  181.         case 18:
  182.             printf("eighteen");
  183.             break;
  184.         case 19:
  185.             printf("nineteen");
  186.         }
  187.     }
  188. else
  189. {
  190.     temp=number/10;
  191.     tenMulti(temp);
  192.     number=number%10;
  193.     if (number>0)
  194.     {
  195.     printf("-");
  196.     ones(number);
  197.     }
  198. }
  199. }
  200.  
  201.  
  202. void tenMulti(int number)
  203. {
  204.  
  205.     switch(number)
  206.     {
  207.     case 1:
  208.         printf("ten");
  209.         break;
  210.     case 2:
  211.         printf("twenty");
  212.         break;
  213.     case 3:
  214.         printf("thirty");
  215.         break;
  216.     case 4:
  217.         printf("forty");
  218.         break;
  219.     case 5:
  220.         printf("fifty");
  221.         break;
  222.     case 6:
  223.         printf("sixty");
  224.         break;
  225.     case 7:
  226.         printf("seventy");
  227.         break;
  228.     case 8:
  229.         printf("eighty");
  230.         break;
  231.     case 9:
  232.         printf("ninety");
  233.     }
  234. }
  235.  
  236.  
  237. void hundreds(int number)
  238. {
  239. ones(number);
  240. printf(" hundred ");
  241. }
  242.    
  243.  
  244. void countdown(int time)
  245. {
  246.     for (time;time;time--)
  247.     {
  248.         printf("Restarting program in %d. . . \r", time);
  249.         Sleep(1000);
  250.     }
  251. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement