| Autor |
Beitrag |
Anna123
Hält's aus hier
Beiträge: 5
|
Verfasst: So 08.02.09 21:42
Hey Leute ich möchte einen Auszahlungsplan erstellen bin auch schon weit gekommen aber ich weiß nicht wie ich das machen kann dass mein Kapital jährlich verzinst wird . also es geht mir darum: ich habe ein startkapital und monatliche entnahmen und jedes jahr wird das noch vorhandene kapital verzinst ... ich komm nicht weiter
hier das was ich geschriebem hab
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33:
| program Auszahlungsplan;
{$APPTYPE CONSOLE}
uses SysUtils;
var m,i,Entnahme:integer; Startkapital,Zinsen:real;
begin
write('Startkapital: '); readln(Startkapital); write('Monatliche Entnahmen: '); readln(Entnahme); write('Jaehrliche Verzinsung: '); readln(Zinsen); m:=0; i:=0; repeat m:=m+1; Startkapital:=Startkapital-Entnahme;
if m=12 then (hier muss der Fehler sein) Startkapital:=Startkapital*(Zinsen/100);
until (Startkapital=0) or (Startkapital<0); write('So viele Monate kommen Sie damit aus: '); write(m); writeln; write('Das sind ',m div 12,' Jahre und ',m mod 12,' Monat(e) !'); readln;
end. |
wäre nett wenn mir jemand einen tipp geben könnte...
Moderiert von Narses: Delphi-Tags hinzugefügt
|
|
Webo
      
Beiträge: 577
Erhaltene Danke: 14
Win 7, Debian
C# (Visual Studio 2013), PHP, C, C++ (Eclipse, KDevelop)
|
Verfasst: So 08.02.09 21:45
Wo hackt's denn ?
Bei den Delphikentnissen oder einer logischen Überlegung ?
Bzw.: Vor welchem Problem stehst du ?
_________________ Man kann nur das aus dem Ärmel schütteln, was man auch vorher reingesteckt hat.
|
|
jfheins
      
Beiträge: 918
Erhaltene Danke: 158
Win 10
VS 2013, VS2015
|
Verfasst: So 08.02.09 21:53
|
|
Anna123 
Hält's aus hier
Beiträge: 5
|
Verfasst: So 08.02.09 23:51
|
|
jaenicke
      
Beiträge: 19346
Erhaltene Danke: 1754
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mo 09.02.09 00:20
|
|
Anna123 
Hält's aus hier
Beiträge: 5
|
Verfasst: Mo 09.02.09 08:34
jaenicke hat folgendes geschrieben : | Nicht nur.  Delphi-Quelltext 1:
| Startkapital:=Startkapital*(Zinsen/100); | Startkapital*(Zinsen/100) sind nur die Zinsen Das heißt wenn du ein Kapital von 400 und 10% Zinsen z.B. hast, dann setzt du es nicht auf 400 + 40 sondern auf 40.
Also: Delphi-Quelltext 1:
| Startkapital := Startkapital + Startkapital*(Zinsen/100); | Dazu noch jfheins Korrektur, dann passt das.
Delphi-Quelltext 1:
| until (Startkapital=0) or (Startkapital<0); | geht auch kurz so: Delphi-Quelltext 1:
| until (Startkapital <= 0); |
Und das war es auch schon. |
ja stimmt^^ das ist mir noch gar nicht aufgefallen .. danke !
--- Moderiert von Narses: Beiträge zusammengefasst---
Hey jetzt hab ich alles berichtigt.. es scheint auch alles logisch. aber wenn ich das Programm starte dann funktioniert das nicht ... ich kann kapital, entnahmen und zinsen eingeben und dann schließt sich das fenster... das hat er vorher nicht gemacht, wober er ja da aber die zinsen nicht richtig berechnet hat...
kp was ich da noch machen soll....
--- Moderiert von Narses: Beiträge zusammengefasst---
so siehts jetzt aus :
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39:
| program Auszahlungsplan;
{$APPTYPE CONSOLE}
uses SysUtils;
var m,Entnahme:integer; Startkapital,Zinsen:real;
begin
write('Startkapital: '); readln(Startkapital); write('Monatliche Entnahmen: '); readln(Entnahme); write('Jaehrliche Verzinsung: '); readln(Zinsen); readln; m:=0;
repeat m:=m+1; Startkapital:=Startkapital-Entnahme;
if (m mod 12) = 0 then Startkapital:=Startkapital+Startkapital*(Zinsen/100) else Startkapital:=Startkapital;
until (Startkapital=0) or (Startkapital<0); write('So viele Monate kommen Sie damit aus: '); write(m); writeln; write('Das sind ',m div 12,' Jahre und ',m mod 12,' Monat(e) !'); readln;
end. |
Moderiert von Narses: Delphi-Tags hinzugefügt
|
|
jaenicke
      
Beiträge: 19346
Erhaltene Danke: 1754
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mo 09.02.09 09:13
Bitte schreibe deinen Quelltext in Delphi-Tags, dann sieht der auch richtig dargestellt aus.
Quelltext 1:
| <span class="inlineSyntax"><span class="codecomment">{PROTECTTAGa07fe42dbc52cc98e3168133b2415ad6}</span></span> |
Anna123 hat folgendes geschrieben : | | Hey jetzt hab ich alles berichtigt.. es scheint auch alles logisch. aber wenn ich das Programm starte dann funktioniert das nicht ... ich kann kapital, entnahmen und zinsen eingeben und dann schließt sich das fenster... |
Bei mir funktioniert es, ich habe es mit 1000, 50 und 10 ausprobiert z.B. und noch ein paar andere Daten, das scheint zu gehen.
Anna123 hat folgendes geschrieben : | Delphi-Quelltext 1: 2:
| readln(Zinsen); readln; | |
Das zweite Readln bedeutet, dass man noch einmal Return drücken muss, warum?
Anna123 hat folgendes geschrieben : | Delphi-Quelltext 1: 2:
| if (m mod 12) = 0 then Startkapital:=Startkapital+Startkapital*(Zinsen/100) else Startkapital:=Startkapital; | |
Das else kannst du dir sparen, denn du veränderst den Wert da ja nicht.
Insgesamt also: 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36:
| program Auszahlungsplan;
{$APPTYPE CONSOLE}
uses SysUtils;
var m, Entnahme: Integer; Startkapital, Zinsen: real;
begin write('Startkapital: '); readln(Startkapital); write('Monatliche Entnahmen: '); readln(Entnahme); write('Jaehrliche Verzinsung: '); readln(Zinsen);
m := 0;
repeat m := m + 1; Startkapital := Startkapital - Entnahme;
if (m mod 12) = 0 then Startkapital := Startkapital + Startkapital*(Zinsen/100);
until (Startkapital <= 0);
write('So viele Monate kommen Sie damit aus: '); write(m); writeln; write('Das sind ',m div 12,' Jahre und ',m mod 12,' Monat(e) !'); readln; end. | Das funktioniert bei mir (genauso wie deine letzte Variante).
|
|
Anna123 
Hält's aus hier
Beiträge: 5
|
Verfasst: Mo 09.02.09 09:18
hey danke dir
aber leider funktioniert das immer noch nicht ... und ich kanns mir nicht erklären warum es bei dir funktioniert und bei mir nicht...
--- Moderiert von Narses: Beiträge zusammengefasst---
ich habs jetzt auch mit deinen zahlen ausprobiert. mit denen funktioniert es aber mit höheren oder ungeraden nicht ...
|
|
jaenicke
      
Beiträge: 19346
Erhaltene Danke: 1754
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mo 09.02.09 09:35
Ach so, jetzt weiß ich was du meinst. Wenn du natürlich z.B. mehr Zinsen gibst als Geld entnimmst, dann wird das Kapital ja immer größer. Das wünscht man sich zwar, aber dann gibt es keinen Abbruch.
Du müsstest also schauen, dass du irgendwann abbrichst. Z.B., wenn das Kapital sehr hoch wird oder sehr viele Monate abgelaufen sind.
Natürlich lässt sich das auch berechnen, ob ein Abbruch nötig ist, weil es nicht abnehmen wird. 
|
|
Anna123 
Hält's aus hier
Beiträge: 5
|
Verfasst: Mo 09.02.09 18:34
Ja natürlich ! Wieso bin ich nicht selbst drauf gekommen ^^... und mir war das ein rätsel, warum das nicht klappen will.... danke nochmal an alle 
|
|