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?