/**
 * A simple example that uses while loops
 *
 */
public class WhileExample1
{
    public static void main(String[] args)
    {
	double  feetPerHour, feetPerKnot, feetPerMile;
	double  speedInKnots, speedInMPH;
	

	feetPerKnot = 6080.0;
	feetPerMile = 5280.0;

        JMUConsole.open();        

        //    A simple while loop
	//[0
	speedInKnots = 1.;

	while (speedInKnots < 50.) 
	{
	    feetPerHour = speedInKnots * feetPerKnot;
	    speedInMPH  = feetPerHour / feetPerMile;
	    
	    JMUConsole.printf("knots: %5.2f\tmph: %5.2f\n", 
                              speedInKnots, speedInMPH);
	    
	    speedInKnots = speedInKnots + 1.;
	}
        //]0

	//[1
        //    A while loop with 0 iterations
	speedInKnots = 51.;

	while (speedInKnots < 50.) 
	{
	    feetPerHour = speedInKnots * feetPerKnot;
	    speedInMPH  = feetPerHour / feetPerMile;
	    
	    JMUConsole.printf("knots: %5.2f\tmph: %5.2f\n", 
                              speedInKnots, speedInMPH);
	    
	    speedInKnots = speedInKnots + 1.;
	}
        //]1

        //    An "infinite"  while loop
	//[2
	speedInKnots = 1.;

	while (speedInKnots > 0.) 
	{
	    feetPerHour = speedInKnots * feetPerKnot;
	    speedInMPH  = feetPerHour / feetPerMile;
	    
	    JMUConsole.printf("knots: %5.2f\tmph: %5.2f\n", 
                              speedInKnots, speedInMPH);
	    
	    speedInKnots = speedInKnots + 1.;
	}
        //]2

        //    An indefinite  while loop
	//[3
	// Prompt the user and assign the response to speedInKnots

	while (speedInKnots > 0.) 
	{
	    feetPerHour = speedInKnots * feetPerKnot;
	    speedInMPH  = feetPerHour / feetPerMile;
	    
	    JMUConsole.printf("knots: %5.2f\tmph: %5.2f\n", 
                              speedInKnots, speedInMPH);
	    
	    // Prompt the user and assign the response to speedInKnots
	}
        //]3

        JMUConsole.close();        
    }

}
