Source of IterativeDemo.java


  1: 
  2: import java.util.*;
  3: 
  4: public class IterativeDemo
  5: {
  6:     public static void main(String[] args)
  7:     {
  8:          System.out.println("Enter an integer:");
  9:          Scanner keyboard = new Scanner(System.in);
 10:          int number = keyboard.nextInt( );
 11:          System.out.println("The digits in that number are:");
 12:          inWords(number);
 13:          System.out.println( );
 14:          System.out.println("If you add ten to that number, ");
 15:          System.out.println("the digits in the new number are:");
 16:          number = number + 10;
 17:          inWords(number);
 18:          System.out.println( );
 19:     }
 20: 
 21:     /**
 22:      Precondition: number >= 0
 23:      Action: The digits in number are written out in words.
 24:     */
 25:     public static void inWords(int number)
 26:     {
 27:         int divisor = powerOfTen(number);
 28:         int next = number;
 29:         while (divisor >= 10)
 30:         {
 31:             System.out.print(digitWord(next/divisor) + " ");
 32:             next = next%divisor;
 33:             divisor = divisor/10;
 34:         }
 35:         System.out.print(digitWord(next/divisor) + " ");
 36:     }
 37: 
 38:     /**
 39:      Precondition: n >= 0. Returns the number in the form "one
 40:      followed by all zeros that is the same length as n."
 41:     */
 42:     private static int powerOfTen(int n)
 43:     {
 44:         int result = 1;
 45:         while(n >= 10)
 46:         {
 47:            result = result*10;
 48:            n = n/10;
 49:         }
 50:         return result;
 51:     }
 52: 
 53:     private static String digitWord(int digit)
 54:     {
 55:         String result = null;
 56:         switch (digit)
 57:         {
 58:             case 0:
 59:                 result = "zero";
 60:                 break;
 61:             case 1:
 62:                 result = "one";
 63:                 break;
 64:             case 2:
 65:                 result = "two";
 66:                 break;
 67:             case 3:
 68:                 result = "three";
 69:                 break;
 70:             case 4:
 71:                 result = "four";
 72:                 break;
 73:             case 5:
 74:                 result = "five";
 75:                 break;
 76:             case 6:
 77:                 result = "six";
 78:                 break;
 79:             case 7:
 80:                 result = "seven";
 81:                 break;
 82:             case 8:
 83:                 result = "eight";
 84:                 break;
 85:             case 9:
 86:                 result = "nine";
 87:                 break;
 88:             default:
 89:                 System.out.println("Fatal Error.");
 90:                 System.exit(0);
 91:                 break;
 92:         }
 93:         return result;
 94:     }
 95: }