AGB  ·  Datenschutz  ·  Impressum  







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

Zählschleife

Ein Thema von foerster7892 · begonnen am 12. Dez 2007 · letzter Beitrag vom 12. Dez 2007
Antwort Antwort
Seite 2 von 3     12 3      
taaktaak

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

Re: Zählschleife

  Alt 12. Dez 2007, 22:16
Die global Variable "Laufvariable" ist überflüssig. Tja, und dann erscheint mir das mit den Zinsen auch merkwürdig (bin ja kein Bankkaufmann, aber immerhin) >> die werden bei jedem Schleifendurchgang neu berechnet! Müssen die nicht zum jeweils vorherigen Ergebnis addiert werden (sonst wäre auch die Initialisierung Zinsen:=0 vor der Schleife überflüssig)?
Ralph
  Mit Zitat antworten Zitat
foerster7892

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

Re: Zählschleife

  Alt 12. Dez 2007, 22:19
[Pascal Error] Unit4.pas(23): E2065 Unsatisfied forward or external declaration: 'TForm4.Label2Click'

jetzt kommt der Fehler ich versteh das nicht ich meine das stimmt doch jetzt alles

und wegen der formel ich berechne für jeden Monat (1/12) die Zinsen da jeden Monat ein bestimmter betrag eingezahlt wird und das wird dann addiert
  Mit Zitat antworten Zitat
Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#13

Re: Zählschleife

  Alt 12. Dez 2007, 22:22
Zitat von foerster7891:
[Pascal Error] Unit4.pas(23): E2065 Unsatisfied forward or external declaration: 'TForm4.Label2Click'
Wahrscheinlich deswegen:
Delphi-Quellcode:
unit Unit4;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm4 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Button1: TButton;
    procedure Edit1Change(Sender: TObject);
    procedure Edit2Change(Sender: TObject);
    procedure Edit3Change(Sender: TObject);
    procedure Label2Click(Sender: TObject); // <-- diese Zeile entfernen!
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations } 
  public
    { Public declarations } 
  end;
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat
taaktaak

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

Re: Zählschleife

  Alt 12. Dez 2007, 22:24
Joo, dann musst du die Label2Click deklaration im Kopf löschen, wenn es das Label2 nicht mehr gibt.
Aber die Formel ist trotzdem merkwürdig, die Zinsen werden nur außerhalb der Schleife addiert. Du addierst dort nur den Zinsbetrag, der im 12ten Schleifendurchlauf berechnet wurde! Bist du Bankdirektor? Solange die Kunden das nicht merken, machst du gute Gewinne (hihihi)
Ralph
  Mit Zitat antworten Zitat
foerster7892

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

Re: Zählschleife

  Alt 12. Dez 2007, 22:26
Danke erstmal aber ich weiß auch nicht hier kommt ein Problem nach dem anderen
[Pascal Warning] Unit4.pas(56): W1019 For loop control variable must be simple local variable

und taaktaak wenn du den Trockentest machst weißt du das die stimmt
(und ich bin Schüler der 10. Klasse)
Zinseszins berechnet sich erst am Ende des Jahres

Schuldigung ich nehm alles zurück da ist ein Fehler

+Zinsen fehlt aber das Programm müsste trotzdem laufen
  Mit Zitat antworten Zitat
Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#16

Re: Zählschleife

  Alt 12. Dez 2007, 22:30
Beachte das mit der lokalen Variable, was ich in Beitrag #9 geschrieben habe.
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat
Benutzerbild von rawsoul
rawsoul

Registriert seit: 29. Okt 2006
Ort: Düsseldorf
249 Beiträge
 
Delphi 2005 Personal
 
#17

Re: Zählschleife

  Alt 12. Dez 2007, 22:31
Zitat von foerster7891:
[Pascal Warning] Unit4.pas(56): W1019 For loop control variable must be simple local variable
Du hast anscheinend immernoch deine Zählvariable global deklariert. Wurde doch bereits angesprochen, sogar mit Codesnippet von Martin K.


//Edit: Huch, wo kommt denn auf einmal die zweite Seite her
Frank Dumont
  Mit Zitat antworten Zitat
taaktaak

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

Re: Zählschleife

  Alt 12. Dez 2007, 22:36
Jooo, mein lieber Förster,
dass wir uns nicht falsch verstehen: Das sollte wirklich nur ein kleiner Scherz sein! Und lass dich nicht aus der Ruhe bringen - manchmal ist der Wurm drin, in so einem kleinen Programm! Das bekommst du schon hin!
So, Schluss jetzt! Und Gute Nacht!
Gruß Ralph
Ralph
  Mit Zitat antworten Zitat
foerster7892

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

Re: Zählschleife

  Alt 12. Dez 2007, 22:45
The Label2Click methode referenced by Label2.OnClick does not exist. Remove the referance

das ist der Fehler der jetzt kommt

und danke für die Hilfe

Delphi-Quellcode:
unit Unit4;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm4 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Button1: TButton;
    procedure Edit1Change(Sender: TObject);
    procedure Edit2Change(Sender: TObject);
    procedure Edit3Change(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form4: TForm4; Startguthaben, Endguthaben, Zinsen, monatlicherBetrag, Zinssatz, laufvariable: real;

implementation

{$R *.dfm}

procedure TForm4.Edit1Change(Sender: TObject);
begin
startguthaben := StrToFloat(Edit1.Text);
end;

procedure TForm4.Edit2Change(Sender: TObject);
begin
zinssatz := StrToFloat(Edit2.Text);
end;

procedure TForm4.Edit3Change(Sender: TObject);
begin
monatlicherBetrag := StrToFloat(Edit3.Text);
end;

procedure TForm4.Button1Click(Sender: TObject);
var a: integer;
begin
Zinsen := 0;
For a :=1 to 12 do begin;
Startguthaben := Startguthaben + monatlicherBetrag;
Zinsen := 1/12*Startguthaben/100*Zinssatz+Zinsen;
Endguthaben := Zinsen + startguthaben;
end;
Label2.Caption := FloatToStr(Endguthaben);
Label1.Caption := FloatToStr(Zinsen);
end;
end.
und so siehts jetzt aus
  Mit Zitat antworten Zitat
Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#20

Re: Zählschleife

  Alt 12. Dez 2007, 22:49
Ist das nicht eine Meldung bei der du auf Yes / No klicken kannst?
Wenn ja, klicke einfach auf 'Yes', wenn nicht musst du im Object Inspector bei Label2 das, was unter dem Event 'OnClick' steht, entfernen.
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 20: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