Einzelnen Beitrag anzeigen

Siggy

Registriert seit: 25. Okt 2008
20 Beiträge
 
#20

Re: Delphi Zinsrechner

  Alt 15. Nov 2008, 12:38
So ich bins mal wieder =)

Habe jetz zuerst mal das hier probiert, da es mir am einfachsten erschien:

[code=delphi]
var
Form1: TForm1;
code: Integer;
code2: Integer;
Anfangskapital: Integer;
Jahre: Integer;
Endkapital: real;
Zinssatz : real;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
try
val (edit1.text, anfangskapital, code); // E ingabe
val (edit3.text, Jahre, code2);

if (code = 0) and (code2 = 0) then
begin
if Jahre <=4
then
begin
Zinssatz := 3;
Label4.Caption :=
'mit einem Zinssatz von 3%';
end //end Jahre <=4

else
begin
Zinssatz := 5;
Label4.Caption :=
'mit einem Zinssatz von 5%' ;
end; //end Jahre >4

if Jahre >= 10
then
begin
Zinssatz := 7 ;
Label4.Caption :=
'mit einem Zinssatz von 7%' ;
end; //end Jahre >= 10

begin
Endkapital :=
(Round(100*(Anfangskapital * exp (Jahre * ln (1+ Zinssatz/100))))/100) ; // V erarbeitung
Label2.Caption := FloatToStr (Endkapital)
end //end if code = 0
end

else // A usgabe
MessageDlg ('Eingabefehler:' +#13#13+
'Variable = Anfangskapital' +#13+
'Stelle im ersten Eingabefeld = ' +intToStr(code) +#13#13+
'Variable = Laufzeit' +#13+
'Stelle im zweiten Eingabefeld = ' +intToStr(code2) +#13#13+
'Falsches Zeichen im ersten Eingabefeld = ' + Edit1.text
Code:
+#13+
               'Falsches Zeichen im zweiten Eingabefeld = ' + Edit3.text [code2]+#13#13+
               'Bitte Eingabe wiederholen...' +#13+
               'Nur ganze Zahlen (0-9) erlaubt!',
               mtWarning,[mbOK],0);
except
MessageDlg ('Felder dürfen nicht leer sein!'+#13+
             'Falls alle Felder ausgefüllt wurden bitte kleinere Werte benutzen',mtWarning,[mbOk],0);
end;//end try - except

end;//end procedure
Also das mit den 2 Codes. Habe dann aber als ich die .exe gestartet hab feststellen müssen, dass es bis jetzt nicht die beste Lösung ist.

Es gibt leider das Problem, dass wenn NUR im Edit3 Feld ein Fehler auftritt und im Edit1 alles i.O. ist, dann wird nicht angezeigt wo der Fehler in Feld3 liegt.
Ist jetz n bisschen kompliziert, deswegen hänge ich mal die .exe an.
Ausserdem wird der letzte Teil der Fehlermeldung

Delphi-Quellcode:
               'Bitte Eingabe wiederholen...' +#13+
               'Nur ganze Zahlen (0-9) erlaubt!',
auch nur dann angezeigt, wenn in beiden Edit Feldern ein Fehler gemacht wurde.
Ihr könnt euch das ja mal anscheun, falls jemand Zeit dazu findet. Is ja auch nicht unbedingt das wichtigste.
Werde mich dann auch mal an den anderen 2 Vorschlägen versuchen wenn ich Zeit dazu finde und die Vorschläge verstehe

Mfg Siggy

[edit=Admin]Beitragscache aktualisiert. Mfg, Daniel[/edit]
Angehängte Dateien
Dateityp: exe captainzins_131.exe (486,0 KB, 0x aufgerufen)
  Mit Zitat antworten Zitat