Einen Mehrwert würde es aber bringen, wenn du deinen Code in eine Funktion auslagern würdest:
Delphi-Quellcode:
function ZinsesZinsBerechnungLaufzeit( const StartKapital, ZinsSatz, ZielKapital: Currency ) : Integer;
var
AktuellesKapital: Currency;
Laufzeit: Integer;
begin
AktuellesKapital := StartKapital;
Laufzeit := 0;
while AktuellesKapital < ZielKapital do
begin
AktuellesKapital := AktuellesKapital + ( AktuellesKapital * Zinssatz ) / 100;
Inc( Laufzeit );
end;
Result := Laufzeit;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
LaufzeitLabel.Caption := IntToStr(
ZinsesZinsBerechnungLaufzeit(
StrToCurr( StartKapitalEdit.Text ),
StrToCurr( ZinsSatzEdit.Text ),
StrToCurr( ZielKapitalEdit.Text ) ) );
end;
Im Übrigen macht dieser Code exakt das, was in der Aufgabe steht. Denn dort sehe ich nichts von der Ausgabe der Zwischenschritte
Ein Umbau auf
repeat
sollte problemlos möglich sein. Allerdings musst du auf die Kopf-Bedingung achten
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)