The completed program is given below.
Here is the complete program. Copy it to a file and run it if you want to know how long it will take to reach a million. (Or wait for the answer on the next page.)
public class MillionDollarYears
{
public static void main( String[] args )
{
double dollars = 1000.00 ;
final double interest = 0.05;
int year = 0;
while ( dollars < 1000000.00 )
{
// add another year's interest
dollars = dollars + dollars*interest;
year = year + 1;
}
System.out.println("It took " + year + " years to reach your goal.");
}
}
This is not a counting loop because the loop is being controlled by a calculation.
Only when the calculation reaches a goal is the loop finished.
The variable year is a counter, but it is not controlling the loop.
Why is this not a sentinel controlled loop?