![]() |
AW: Zinsberechnung mit For Do Schleife
meine fehler codes:
|
AW: Zinsberechnung mit For Do Schleife
was verändern eigentlich die delphi tags???
|
AW: Zinsberechnung mit For Do Schleife
Kann es sein, dass auch die Formel nicht stimmt?
Weil das ist ja Unsinn:
Delphi-Quellcode:
end;
var
i: Integer; EndKapital: Double; begin EndKapital := 0.0; for i := 1 to Jahre do EndKapital := StartKapital*(Zins/1000)+StartKapital; Result := EndKapital; Dann hätte ich in fünf Jahren bei 2,3 Prozent Zinsen und einen Startkapital von 100 Euro nur 23 Cent Zinsen bekommen. Und wo Fließen bei dir da die Jahre ein? |
AW: Zinsberechnung mit For Do Schleife
möglich, das problem ist ja aber mehr das er das programm gar nicht startet, auch wenn die formel nicht stimmt müsste das programm gestartet werden...das werde ich dann später noch mal überprüfen.
Ich wüsste zur zeithalt nurgern wie ich die fehler behebn kann??? |
AW: Zinsberechnung mit For Do Schleife
die jahre sind dazu da wie oft die schleife durchlaufen soll..das 1000 müsste natürlich durch 100 ersetzt werden(schreibfehler)
|
AW: Zinsberechnung mit For Do Schleife
Ja schon, nur rechnest du immer mit dem gleichen Startkapital. Das erhöhte Kapital pro Jahr fließt ja gar nicht mit ein. Deswegen auch die Meldung vom Compiler, dass i nie benutzt wird.
Es müsste so aussehen:
Delphi-Quellcode:
Wobei ich mir bei der Formel nicht sicher bin, denn mit der Formel aus der Wikipedia bekomme ich den auskommentierten Wert raus.
function EndKapital(StartKapital, Zins: Double; Jahre: Integer): Double;
var i: Integer; EndKapital: Double; begin if Zins <= 0 then Raise ERangeError.Create('Zins ist kleiner/ gleich Null'); if StartKapital <= 0 then Raise ERangeError.Create('Startkapital ist kleiner/gleich Null'); if Jahre < 0 then Raise ERangeError.Create('Jahre ist kleiner Null'); EndKapital := 0.0; for i := 1 to Jahre do EndKapital := EndKapital*(Zins/100)+StartKapital; Result := EndKapital; end; procedure TForm1.Button1Click(Sender: TObject); begin try ShowMessage(FloatToStr(EndKapital(100, 2.3, -5))); // 101,120413075641343 except on E: Exception do ShowMessage(E.Message); end; end; Und was deine Fehler angeht, das sind einfache Syntaxfehler. Guck deinen Quelltext einfach noch mal genau an. Und die Delphi-Tags bewirken, dass der Quelltext formatiert und somit leserlicher dargestellt wird. |
AW: Zinsberechnung mit For Do Schleife
Ersetze den letzten
Delphi-Quellcode:
durch :
;
Delphi-Quellcode:
Ob die Rechnung so stimmt ?? Nachrechnen.
.
|
AW: Zinsberechnung mit For Do Schleife
Zitat:
Delphi-Quellcode:
Das ist überflüssig und wieso grad 0 ist mir auch schleierhaft. Dieser Wert Null wird jedenfalls nie benutzt. Ob i in der Schleife verwendet wird oder nicht, wird meines Wissens nicht angezeigt. Es ist ja lediglich eine Laufvariable, die man nicht zwingend innerhalb der Schleife nutzen muss.
i:=0;
for i:= 1 to jahre do |
AW: Zinsberechnung mit For Do Schleife
OK, aber trotzdem ändert sich der Endwert in der Schleife nicht.
|
AW: Zinsberechnung mit For Do Schleife
Jo, das stimmt.
Es ist übrigens auch überflüssig, den Edit-Text innerhalb der Schleife zuzuweisen. Es steht am Ende sowieso nur der Wert des letzten Schleifendurchlaufs drin. Das würde ich daher außerhalb der Schleife zuweisen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:07 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz