Advertisement
brilliant_moves

NumberInText.java

May 19th, 2015
413
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5 2.41 KB | None | 0 0
  1. import javax.swing.*;
  2.  
  3. public class NumberInText {
  4.  
  5.     /**
  6.     *   Program:    NumberInText.java
  7.     *   Purpose:    Display a number between 1 and 900 (inclusive) in English words
  8.     *   Creator:    Chris Clarke
  9.     *   Modified:   19.05.2015
  10.     */
  11.  
  12.     public static void main(String[] args) {
  13.         final int MIN = 1;
  14.         final int MAX = 900;
  15.         int number=0;
  16.         String num1;
  17.  
  18.         do {
  19.             num1 = JOptionPane.showInputDialog ("Enter number between "+MIN+" and "+MAX);
  20.             number = Integer.parseInt(num1);
  21.         } while (number<MIN || number>MAX);
  22.  
  23.         System.out.println (getNumberWord (number));
  24.     } // end main()
  25.  
  26.     public static String getNumberWord(int num) {
  27.  
  28.         switch (num) {
  29.             case 0: return "Zero";
  30.             case 1: return "One";
  31.             case 2: return "Two";
  32.             case 3: return "Three";
  33.             case 4: return "Four";
  34.             case 5: return "Five";
  35.             case 6: return "Six";
  36.             case 7: return "Seven";
  37.             case 8: return "Eight";
  38.             case 9: return "Nine";
  39.             case 10: return "Ten";
  40.             case 11: return "Eleven";
  41.             case 12: return "Twelve";
  42.             case 13: return "Thirteen";
  43.             case 14: return "Fourteen";
  44.             case 15: return "Fifteen";
  45.             case 16: return "Sixteen";
  46.             case 17: return "Seventeen";
  47.             case 18: return "Eighteen";
  48.             case 19: return "Nineteen";
  49.             default: return twentyPlus(num);
  50.         } // end switch
  51.  
  52.     } // end getNumberWord()
  53.  
  54.     public static String twentyPlus(int num) {
  55.  
  56.         String word = "";
  57.         int hundreds, tens, units=0;
  58.  
  59.         hundreds = num / 100;
  60.  
  61.         switch (hundreds) {
  62.             case 0: break;
  63.             case 1: word="One Hundred "; break;
  64.             case 2: word="Two Hundred "; break;
  65.             case 3: word="Three Hundred "; break;
  66.             case 4: word="Four Hundred "; break;
  67.             case 5: word="Five Hundred "; break;
  68.             case 6: word="Six Hundred "; break;
  69.             case 7: word="Seven Hundred "; break;
  70.             case 8: word="Eight Hundred "; break;
  71.             case 9: word="Nine Hundred "; break;
  72.         } // switch
  73.  
  74.         num -= (hundreds*100);
  75.         tens = num / 10;
  76.  
  77.         switch (tens) {
  78.             case 2: word+="Twenty "; break;
  79.             case 3: word+="Thirty "; break;
  80.             case 4: word+="Forty "; break;
  81.             case 5: word+="Fifty "; break;
  82.             case 6: word+="Sixty "; break;
  83.             case 7: word+="Seventy "; break;
  84.             case 8: word+="Eighty "; break;
  85.             case 9: word+="Ninety "; break;
  86.             default: break;
  87.         } // end switch
  88.  
  89.         if (tens>=2) num -= (tens*10);
  90.         units = num;
  91.  
  92.         if (units>0) {
  93.             word+=getNumberWord (units);
  94.         } // end if
  95.  
  96.         return word;
  97.     } // end twentyPlus()
  98.  
  99. } // end class NumberInText
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement