Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.343 Beiträge
Delphi 11 Alexandria
|
Re: Kreditendwert wird negativ
13. Feb 2008, 12:57
Ich weiß ja nicht, was Du im Rest Deines Begin-End-Blockes noch machst...
Du könntest evtl. eine Hilfsvariable einführen:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
i : Integer ;
kredit,zinsen,zinssatz,rate,ende : real ;
NextEnde: Real; // <--
begin
kredit := StrToFloat(edit1.Text);
rate := StrToFloat(edit2.Text);
zinssatz := StrToFloat(edit3.Text)/100;
i := 0 ;
NextEnde := 0; // <--
while (Kredit > 0) and (NextEnde >= 0) do // <--
begin
inc(i);
StringGrid1.RowCount:=(i+1);
zinsen := kredit*zinssatz/12 ;
ende := kredit-rate+zinsen ;
StringGrid1.Cells[0,i]:=IntToStr(i);
StringGrid1.Cells[1,i]:=FloatToStrF(kredit,ffFixed,10,2);
StringGrid1.Cells[2,i]:=FloatToStrF(zinsen,ffFixed,10,2);
StringGrid1.Cells[3,i]:=FloatToStrF(ende,ffFixed,10,2);
kredit:=ende ;
if ende < 0 then break ; // <-- das kann dann raus
Panel1.Caption := IntToStr(i);
Panel2.Caption := FloatToStr(i/12);
Panel4.Caption := FloatToStrF(ende,ffFixed,10,2);
...
NextEnde := ... // <-- schon mal schauen, was als nächstes kommt
end; // <-- nächste While-Prüfung
Evtl. kannst Du dafür auch die Variable Kredit nehmen, müsstest sie aber dann vor dem While initialisieren (0 zuweisen).
stahli
|
|
Zitat
|