In dem oben stehenden Dialog probiert der Anwender so lange Zinssätze aus bis das Konto das Million Dollar Ziel erreicht hat. In Begriffen der Programmierung, was tut der Anwender?

Eine gute Antwort könnte sein:

Der Anwender handelt wie eine ergebnisgesteuerte Schleife.

Zinssatz nach und nach erhöhen

Der Anwender handelt wie eine ergebnisgesteuerte Schleife, also könnten wir das Programm tun lassen, was der Anwender tut. Hier ist ein Grundriss eines Programms, dass bei einem Zinssatz von Null Prozent beginnt und dann in Zehntel Prozentschritten den Zinssatz erhöht bis das Million Dollar Ziel erreicht ist:

class  MillionDollarZinssaetze
{

  public static void main( String[] args )
  {
    double anfangsbetrag = 1000.0 ;
    double dollars = 0.0;
    double zinssatz;

    zinssatz = -0.001;    // das wird gleich auf Null erhöht

    while ( dollars < 1000000 )
    {
       // zum nächsten Zinssatz wechseln
       zinssatz = zinssatz + 0.001;

       // Dollars nach 40 Jahren beim aktuellen Zinssatz berechnen

       . . . . . .

    }

    System.out.println("Nach 40 Jahren bei " + zinssatz*100
      + "Prozent Zinsen werden Sie" + dollars + " Dollar haben." );
  }

}

Dies ist eine ergebnisgesteuerte Schleife, da die Schleife nur dann beendet wird, wenn der Zinssatz gefunden wird, der uns das gewünschte Resultat liefert. Die Anzahl der Schleifendurchgänge ist in dem Programm nicht explizit festgelegt.

FRAGE 8:

Das Grundgerüst des Programms hat keinen Code für die Teile, die sagen "// Dollars nach 40 Jahren berechnen." Wie denken Sie, kann das erreicht werden? (Hinweis: Betrachten Sie die vorherige Version des Programms.)