Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Zinsrechnung (https://www.delphipraxis.net/82361-zinsrechnung.html)

-=Zero47=- 11. Dez 2006 21:02


Zinsrechnung
 
Was ich machen will:

Ein Programm, bei dem ich die Jahresanzahl, den zinssatz und das kapital eingeben kann und das mir dann dieses in ein endkapital berechnet, was mir dann am ende zur verfügung stehen würde.

Mein Problem ist nun, dass das Prog bei mir hängenbleibt...

bitte um hilfe:

Code:
procedure TForm1.RechnenButtonClick(Sender: TObject);

var AJahre,EJahre,n: integer;

    Zins,AKapital,EKapital: real;


begin

AJahre:=StrToInt(Jahreedit.text);
Zins:=StrToInt(Zinssatzedit.text);
AKapital:=StrToInt(Anfangskapitaledit.text);

n:=0;
repeat

EKapital:=AKapital*(zins/100)+AKapital;

Until n=AJahre;

EJahre:=AJahre;
Endkapitaledit.text:=FloatToStr(EKapital);
Jahre2edit.text:=IntToStr(EJahre);


end;

end.

Helmi 11. Dez 2006 21:08

Re: Zinsrechnung
 
Hallo,

wo bleibt denn dein Programm hängen?
Unsere Glaskugeln sind meistens in der Reparatur und deshalb können wir nicht hellsehen.

aber ich vermute mal, dass du in der Schleife hängen bleibst:
Delphi-Quellcode:
n:=0;
repeat

EKapital:=AKapital*(zins/100)+AKapital;

Until n=AJahre;
Wann soll n denn gleich AJahre werden? - Du erhöhst in der Schleife nirgends n.
Deshalb ist das eine Endlosschleife. Deshalb hängt sich das Programm auf.

-=Zero47=- 11. Dez 2006 21:14

Re: Zinsrechnung
 
es bleibt hängen, sobald ich den Rechnen Button klicke...

wie kann man "n" in die schleife einbauen?

Helmi 11. Dez 2006 21:17

Re: Zinsrechnung
 
probiers mal so:

Delphi-Quellcode:
n:=0;
repeat
  EKapital := AKapital * (zins / 100) + AKapital;
  inc(n);
Until n = AJahre;

-=Zero47=- 11. Dez 2006 21:27

Re: Zinsrechnung
 
Also nun ist der Hänger weg...

Hab aber nun folgendes Problem:

Ich will immer die Zinsen des aktuellen Betrages benutzen, heißt also, dass wenn ich z.b. 100 Euro auf 10% Zinsen und 2 Jahre anlege

zuerst die 10% von den 100 € haben will, also 110€ und von dem Betrag gleich wieder die 10%

Formel habe ich grad nicht in der Umgebung XD

Es müsste aber eigentlich die stimmen, die im Quellcode verwendet wurde...

Helmi 11. Dez 2006 21:33

Re: Zinsrechnung
 
vielleicht so:

Delphi-Quellcode:
n:=0;
repeat
  AKapital := AKapital * (zins / 100) + AKapital;
  inc(n);
Until n = AJahre;

EKapital := AKapital;

-=Zero47=- 11. Dez 2006 21:36

Re: Zinsrechnung
 
danke es geht^^

War schon voll verzweifelt :). Wir haben des in der Schule angefangen gehabt...ich wollte es auf einen leicht anderen Weg zustande bringen und bin dann hängen geblieben XD

Helmi 11. Dez 2006 21:37

Re: Zinsrechnung
 
Zitat:

Zitat von -=Zero47=-
danke es geht^^

War schon voll verzweifelt :). Wir haben des in der Schule angefangen gehabt...ich wollte es auf einen leicht anderen Weg zustande bringen und bin dann hängen geblieben XD

Verstehst du auch, was der code oben macht?

-=Zero47=- 11. Dez 2006 21:41

Re: Zinsrechnung
 
Er wiederholt den Vorgang sooft mit den aktuellen werten, bis n die Jahreanzahl erreicht hat. Dann bricht es ab und behält den akutellen Wert und setzt ihn für die Ausgabe des Betrages ein...

Denke ich mal^^

Des inc(n) scheint eine Art Zähler zu sein...

Klaus01 12. Dez 2006 08:45

Re: Zinsrechnung
 
oder so ganz ohne Schleife:

Delphi-Quellcode:
EKapital:= AKaptital*power((1+zins/100),AJahre);
für power solltest Du die Math unit einbinden

Infos zu Zinseszinsberechnung findest Du hier.

Grüße
Klaus


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:06 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz