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 in a few pages.)
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 the result of a calculation.
Only when the result 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?