Einzelnen Beitrag anzeigen

GW1nner

Registriert seit: 16. Dez 2009
6 Beiträge
 
Delphi 5 Professional
 
#1

Bedingung für Schleife nach einem Durchgang erfüllt!?????

  Alt 16. Dez 2009, 20:48
Hallo,
kurze Info am Rande, in der Schule programmieren wir mit Delphi. Da ich Wirtschaftinformatik habe programmieren wir Fachgerechte Programme.


Beim Folgenden Programm möchte ich gerne bei einem Konto Betrag(Kapital: siehe Code), auf welches jährlich Zinsen in Prozent(Zinssatz: siehe Code) berechnet werden wissen, wie lange es dauerd bis ein Wunschbetrag, den ich definiere erreicht ist.

Beispiel:

Bild


{* Die Ausgabe wäre so als Frage zu stellen:
Wie lange dauerd es bis ein Betrag von mindestens oder der nächst höherer betrag "120" erreicht ist?
Wie viel betragen die Zinsen, die Anfallen?
Welcher Betrag kommt da raus?
*}

Delphi-Quellcode:
procedure TFormZinsrechnung.ButtonRechnenClick(Sender: TObject);
var Kapital, Zinsen, Wunschbetrag:double;
    Jahre, Zinssatz: integer;
begin
    TRY if StrToFloat (EditKapital.Text)< StrToFloat (EditWunschbetrag.Text)
          then begin
                    Kapital := StrToFloat (EditKapital.Text);
                    Wunschbetrag := StrToFloat (EditKapital.Text);
                    Zinssatz := StrToInt (EditZinssatz.Text);
                    Jahre := 0;
                        REPEAT
                          Zinsen := Kapital/100*Zinssatz;
                          Jahre := Jahre+1;
                          Kapital := Zinsen+Kapital;
                        UNTIL Kapital>=Wunschbetrag;
                    EditNKapital.Text := FloatToStr (Kapital);
                    EditJahre.Text := IntToStr (Jahre);
                    EditZinsen.Text := FLoatToStr (Zinsen);
             end
             else
             MessageDlg('Custom dialog',mtCustom,
                              [mbYes,mbAll,mbCancel], 0);

    EXCEPT ShowMessage('Custom dialog');
    END;
end;
Ich verstehe einfach nicht wieso für ihn die Bedingung nach einem Mal schon erfüllt ist? Denn Until sagt ja aus: "Sobald Kapital größer gleich dem Wunschbetrag ist, dann stoppe".
- -
<
\__/
  Mit Zitat antworten Zitat