AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Zählschleife

Ein Thema von foerster7892 · begonnen am 14. Feb 2008 · letzter Beitrag vom 14. Feb 2008
Antwort Antwort
Seite 1 von 2  1 2      
foerster7892

Registriert seit: 10. Okt 2007
Ort: Brieskow-Finkenheerd
181 Beiträge
 
#1

Zählschleife

  Alt 14. Feb 2008, 08:05
Delphi-Quellcode:
var
Form4: TForm4; Startguthaben, Endguthaben, Zinsen, monatlicherBetrag, Zinssatz, laufvariable: real;

implementation

{$R *.dfm}

procedure TForm4.Button1Click(Sender: TObject);
var b, Jahre, a: integer;
begin
  Zinsen := 0;
  Startguthaben := StrToFloat(Edit1.Text);
  zinssatz := StrToFloat(Edit2.Text);
  monatlicherBetrag := StrToFloat(Edit3.Text);
  For b := 1 to Jahre do
  begin;
    For a := 1 to (12 * Jahre) do
    begin;
      Startguthaben := Startguthaben + monatlicherBetrag;
      Zinsen := 1/12 * Startguthaben/100 * Zinssatz + Zinsen;
      Endguthaben := Zinsen + Startguthaben;
    end;
  end;
Label2.Caption := FloatToStr(Endguthaben);
Label1.Caption := FloatToStr(Zinsen);
end;
end.
Ich möchte mit dem Programm zu einem Startguthaben monatliche konstante Beiträge zahlen und die Zinsen sollen immer am ende des Jahres abgerechnet werden.
Wie kann ich das machen das die Zinsen am Ende des Jahres erst wieder dazu addiert werden das ich dann weiterrechnen kann?

bitte um hilfe
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#2

Re: Zählschleife

  Alt 14. Feb 2008, 08:14
Moin, Moin,

vielleicht die Zinsen in der äußeren Schleife addieren?

Delphi-Quellcode:
For b := 1 to Jahre do
  begin;
    For a := 1 to (12 * Jahre) do
    begin;
      Startguthaben := Startguthaben + monatlicherBetrag;
      Zinsen := 1/12 * Startguthaben/100 * Zinssatz + Zinsen;
      //Endguthaben := Zinsen + Startguthaben;
    end;
    Endguthaben := Zinsen + Startguthaben; // << hier?!
  end;
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von Xong
Xong

Registriert seit: 9. Jan 2008
186 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Zählschleife

  Alt 14. Feb 2008, 08:23
Zitat von foerster7891:
Delphi-Quellcode:
var
Form4: TForm4; Startguthaben, Endguthaben, Zinsen, monatlicherBetrag, Zinssatz, laufvariable: real;

implementation

{$R *.dfm}

procedure TForm4.Button1Click(Sender: TObject);
var b, Jahre, a: integer;
begin
  Zinsen := 0;
  Startguthaben := StrToFloat(Edit1.Text);
  zinssatz := StrToFloat(Edit2.Text);
  monatlicherBetrag := StrToFloat(Edit3.Text);
  For b := 1 to Jahre do
  begin; // Was soll das Semikolon? [1]
    For a := 1 to (12 * Jahre) do {  Was soll das denn?
                                    Im ersten Jahr 12, im zweiten 24, im dritten 36 [...]
                                    Durchläufe. Ist das Absicht?
                                    Außerdem ist "Jahre" nicht initialisiert! Wo wird "Jahre"
                                     ein Wert zugewiesen? }

    begin; // Was soll das Semikolon? [2]
      Startguthaben := Startguthaben + monatlicherBetrag;
      Zinsen := 1/12 * Startguthaben/100 * Zinssatz + Zinsen;
      Endguthaben := Zinsen + Startguthaben; // Die Zinsen werden jeden Monat dazu addiert!
    end;
  { Hier wäre das Ende des jeweiligen Jahres erreicht. Führe also deine Jahresendberechnungen hier aus! }
  end;
Label2.Caption := FloatToStr(Endguthaben);
Label1.Caption := FloatToStr(Zinsen);
end;
end.
LG,
Xong
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#4

Re: Zählschleife

  Alt 14. Feb 2008, 08:35
HIHIHI,
das mit den wachsenden Monaten/Jahr war mir gar nicht aufgefallen - bringt aber echt tolle Zinsgewinne, sollte man vielleicht so lassen!
Ralph
  Mit Zitat antworten Zitat
foerster7892

Registriert seit: 10. Okt 2007
Ort: Brieskow-Finkenheerd
181 Beiträge
 
#5

Re: Zählschleife

  Alt 14. Feb 2008, 08:38
Delphi-Quellcode:
var
  Form4: TForm4; Startguthaben, Endguthaben, Zinsen, monatlicherBetrag, Zinssatz, laufvariable: real;

implementation

{$R *.dfm}

procedure TForm4.Button1Click(Sender: TObject);
var a, b, Jahre: integer;
begin
  Zinsen := 0;
  Startguthaben := StrToFloat(Edit1.Text);
  zinssatz := StrToFloat(Edit2.Text);
  monatlicherBetrag := StrToFloat(Edit3.Text);
  Jahre := StrToInt(Edit4.Text);
  For b := 0 to Jahre do
  begin;
    For a := 1 to 12 do
    begin;
      Startguthaben := Startguthaben + monatlicherBetrag;
      Zinsen := 1/12*Startguthaben/100*Zinssatz+Zinsen;
    end;
  Endguthaben := Zinsen + startguthaben;
  end;
  Label2.Caption := FloatToStr(Endguthaben);
  Label1.Caption := FloatToStr(Zinsen);
end;
end.
So jetzt ist es soweit fertig
ich war doch noch garnicht fertig ich hab doch auch noch überlegt aber ein kleines problem gibt es noch wenn ich 0 Jahre eingebe dann hab ich das Problem das er die Schleife trotzdem einmal durchlaufen lässt
was kann ich tun

und danke schon mal
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.548 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Zählschleife

  Alt 14. Feb 2008, 08:39
For b := 1 to Jahre do
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
foerster7892

Registriert seit: 10. Okt 2007
Ort: Brieskow-Finkenheerd
181 Beiträge
 
#7

Re: Zählschleife

  Alt 14. Feb 2008, 09:00
danke
aber kannst du mir noch sagen wieso 0 to 0 nicht geht weil eigentlich dürfte er da ja auch nichts machen?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.548 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Zählschleife

  Alt 14. Feb 2008, 09:01
Wieso sollte er nichts machen?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
foerster7892

Registriert seit: 10. Okt 2007
Ort: Brieskow-Finkenheerd
181 Beiträge
 
#9

Re: Zählschleife

  Alt 14. Feb 2008, 09:22
es liegt doch kein schritt zwischen 0 und 0 deshalb dürfte die schleife doch auch 0 mal durchgeführt werden? wieso ist das nicht so
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#10

Re: Zählschleife

  Alt 14. Feb 2008, 09:29
Du kannst die Anweisung for x=n to m auch so lesen: Für jedes (natürliche) Element in dem Intervall [n,...,m] mache folgendes:...

Damit ist auch klar, dass eine Schleife for i:=3 to 2 nicht ausgeführt wird. Hier geht es um Element im Intervall [3,2] und dieses ist nach Definition Null. (es gibt keine Elemente mit 3<x<2, da "<" als totale Ordnung transitiv ist).

Und dann ist genau die Null in der Menge [0]. Alternativ auch so:
Setzt die Zählvariable auf die untere G, wenn sie dann noch nicht größer als die oberere Schranke ist, führe die Schleife aus, inkrementiere den Zähler, und vergleiche wieder mit der oberen Grenze.
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:29 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