public class ThreeN
{
  
   public static void main (String [] args)
	{
	         // object declaration
	   ThreeN_Helper myHelper;
		
				// variable declarations		
		int startingNumber, endingNumber, currentNumber,
		    cycleLength, cycleLengthSum;

			   // object creation		
		myHelper = new ThreeN_Helper();
		
				// variable initialization
		cycleLengthSum = 0;
		
		             // print intro method & heading
      myHelper.printHeader();  
	  				
		  	// get starting number
		startingNumber = myHelper.getNumber("first");
		
		// get ending number
		endingNumber = myHelper.getNumber("second" );
		
             // will be used to find cycle lengths
				 // of all numbers in range
				 // will need startingNumber at end of program
				 // so don't want to destroy it
		currentNumber = startingNumber;
		
		while (currentNumber <= endingNumber)
		{
				// calculate cycle length for currentNumber	
		  cycleLength =  myHelper.computeCycleLength(currentNumber);
			
				// add cycle length of current number to sum
		  cycleLengthSum = cycleLengthSum + cycleLength;
		  
		      // update currentNumber (to avoid infinite loop)
 		  currentNumber ++;
		}
		
		       // print ending message
      myHelper.printResults 
		   (startingNumber, endingNumber, cycleLengthSum); 				   
	  }
	}  				