Ok, habs gelöst. Vielen Dank nochmal fkerber, so schnell wie du schrieb mir bis jetzt noch in keinem Forum jmd.
Die Lösung wäre (für die Intressenten) eine zweite Variable Anzulegen mit dem man nach der Schleife den Neuen Kapital - Kapital am Anfang schreibt.
Zinsen2 := Kapital - StrTOFloat (EditKapital.Text);
EditZinsen.Text := FLoatToStr (Zinsen2);
Fertiger Delphi Code
Delphi-Quellcode:
procedure TFormZinsrechnung.ButtonRechnenClick(Sender: TObject);
var Kapital, Zinsen,Zinsen2 Wunschbetrag:double;
Jahre, Zinssatz: integer;
begin
TRY if StrToFloat (EditKapital.Text)< StrToFloat (EditWunschbetrag.Text)
then begin
Kapital := StrToFloat (EditKapital.Text);
Wunschbetrag := StrToFloat (EditWunschbetrag.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);
Zinsen2 := Kapital - StrTOFloat (EditKapital.Text);
EditZinsen.Text := FLoatToStr (Zinsen2);
end
else
MessageDlg('Custom dialog',mtCustom,
[mbYes,mbAll,mbCancel], 0);
EXCEPT ShowMessage('Custom dialog');
END;
end;
[edit=SirThornberry]Beiträge zusammengeführt - Mfg, SirThornberry[/edit]