Advertisement
Guest User

Untitled

a guest
May 29th, 2015
208
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 2.17 KB | None | 0 0
  1. <body>
  2.     <h3>Problem 8. Number as words</h3>
  3. <p>Write a script that converts a number in the range [0…999] to words, corresponding to its English pronunciation.</p>
  4. <textarea  rows="3" cols="60" id="number-as-word" placeholder="Enter number"></textarea>
  5. <button onclick="convertNumberToWord()">Convert!</button>
  6.    
  7.    
  8. <script> function convertNumberToWord() {
  9.     var numInput = parseInt(document.getElementById('number-as-word').value);
  10.     var hundreds = Math.floor(numInput /100);
  11.     var tens = (Math.floor(numInput/10)) % 10;
  12.     var digits = numInput % 10;
  13.     var result = '';
  14.     if(hundreds !==0) {
  15.        if(tens !== 0 || digits !== 0){
  16.      result = getDigitToWord(hundreds) +  ' ' + 'hundred and' + ' ' ;
  17.     } else if (tens === 0 && digits === 0){
  18. result = getDigitToWord(hundreds) +  ' ' + 'hundred';
  19.     }
  20.     } if (tens !== 0 && tens !==1) {
  21.        result += getDigitToWord(tens *10) + ' ' + getDigitToWord(digits);
  22.     } if (tens === 1){
  23.         result += getDigitToWord(numInput %100);
  24.     } if (tens === 0){
  25.         result += getDigitToWord(digits);
  26.     }
  27.  
  28.     document.getElementById('number-as-word').value = result;
  29. }
  30. function getDigitToWord(digitInput) {
  31.     switch (digitInput) {
  32.  case 0: return '';
  33.         case 1: return 'one';
  34.         case 2: return 'two';
  35.         case 3: return 'three';
  36.         case 4: return 'four';
  37.         case 5: return 'five';
  38.         case 6: return 'six';
  39.         case 7: return 'seven';
  40.         case 8: return 'eight';
  41.         case 9: return 'nine';
  42.         case 10: return 'ten';
  43.         case 11: return 'eleven';
  44.         case 12: return 'twelve';
  45.         case 13: return 'thirteen';
  46.         case 14: return 'fourteen';
  47.         case 15: return 'fifteen';
  48.         case 16: return 'sixteen';
  49.         case 17: return 'seventeen';
  50.         case 18: return 'eighteen';
  51.         case 19: return 'nineteen';
  52.         case 20: return 'twenty';
  53.         case 30: return 'thirty';
  54.         case 40: return 'forty';
  55.         case 50: return 'fifty';
  56.         case 60: return 'sixty';
  57.         case 70: return 'seventy';
  58.         case 80: return 'eighty';
  59.         case 90: return 'ninety';
  60.     }
  61.     }</script>
  62. </body>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement