// Author: Kiri Wagstaff, wkiri@cs.cornell.edu 
// Date: July 2, 2001
// Read in a number and output it reversed.
// This version uses a while loop.

public class MirrorNumberWhile 
{
   public static void main(String[] args)
   {
       int number;

       // Read in a number from 0 to 1000
       System.out.println("Enter an integer from 0 to 1000.");
       number = SavitchIn.readInt();
		
       // Check input
       if (number < 0 || number > 1000)
       {
	   System.out.println("Number out of range.");
	   System.exit(1);
       }

       // Output the reversed number
       System.out.print(number + " reversed is ");
       System.out.print(number % 10);
       
       // Loop: setup
       int div = 10;
       // Loop: check condition
       while (div <= 1000)
       {
	   // Loop: processing
	   if (number / div > 0)
	   {
	       int digit = (number / div) % 10;
	       System.out.print(digit);
	   }
	   // Loop: update
	   div *= 10;
       }
       // Loop: postprocessing
       System.out.println();
		
   }
	
}
