Assignment #69
Code
/// Name: Jonathan Stine
/// Period: 5
/// Program Name: do-while Swimming
/// File Name: DoWhileSwimming.java
/// Date Finished: 1/19/16
import java.util.Scanner;
public class DoWhileSwimming
{
public static void main( String[] args ) throws Exception
{
Scanner keyboard = new Scanner(System.in);
String swimmer1 = "GALLANT";
String swimmer2 = "GOOFUS ";
double minimumTemperature = 79.0; // degrees Fahrenheit
double currentTemperature;
double savedTemperature;
int swimTime;
System.out.print("What is the current water temperature? ");
currentTemperature = keyboard.nextDouble();
savedTemperature = currentTemperature; // saves a copy of this value so we can get it back later.
System.out.println( "\nOkay, so the current water temperature is " + currentTemperature + "F." );
System.out.println( swimmer1 + " approaches the lake...." );
swimTime = 0;
while ( currentTemperature >= minimumTemperature )
{
System.out.print( "\t" + swimmer1 + " swims for a bit." );
swimTime++;
System.out.println( " Swim time: " + swimTime + " min." );
Thread.sleep(600); // pauses for 600 milliseconds
currentTemperature -= 0.5; // subtracts 1/2 a degree from the water temperature
System.out.println( "\tThe current water temperature is now " + currentTemperature + "F." );
}
System.out.println( swimmer1 + " stops swimming. Total swim time: " + swimTime + " min." );
currentTemperature = savedTemperature; // restores original water temperature
System.out.println( "\nOkay, so the current water temperature is " + currentTemperature + "F." );
System.out.println( swimmer2 + " approaches the lake...." );
swimTime = 0;
do
{
System.out.print( "\t" + swimmer2 + " swims for a bit." );
swimTime++;
System.out.println( " Swim time: " + swimTime + " min." );
Thread.sleep(600);
currentTemperature -= 0.5;
System.out.println( "\tThe current water temperature is now " + currentTemperature + "F." );
} while ( currentTemperature >= minimumTemperature );
System.out.println( swimmer2 + " stops swimming. Total swim time: " + swimTime + " min." );
}
}
/// 1) They swim for the same amount of time.
/// 2) Gallant does not swim because it's too cold, but Goofus swims for a minute before getting out.
/// 3) Gallant checks the temperature first.
/// 4) Goofus does not check the water temperature first.
/// 5) A do-while loops is carried out one time automatically before the condition is checked. The whiles is only activated when considering whether the loop should be repeated.
/// 6) The pre-test loop is a while loop because the test is done before execution. The post-test loop is a do-while loop because execution happens before the test.
Code Output