Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Währungsrechner funktioniert nicht (https://www.delphipraxis.net/143670-waehrungsrechner-funktioniert-nicht.html)

Luckie 20. Nov 2009 23:08

Re: Währungsrechner funktioniert nicht
 
Ich glaube, wir sollten mal wieder zum Thema zurückkommen. Deshalb verschiebe ich den Thread jetzt auch in das richtige Forum.

Wolfgang Mix 21. Nov 2009 09:31

Re: Währungsrechner funktioniert nicht
 
@Michael
Zitat:

Wie ich auch schon aus anderen Threads erfahren habe, ist dies wohl nicht üblich an Schulen Hilfe zur Selbsthilfe zu lehren -- zumindest im Informatikunterricht.
Die Erkenntnis ist wohl eher aus Deiner Glaskugel :mrgreen:

Gruß

Wolfgang

David Martens 21. Nov 2009 12:22

Re: Währungsrechner funktioniert nicht
 
Warum einfach wenns auch kompliziert geht.

Warum benutzt du
Delphi-Quellcode:
Val(edt1.text, kurs, code);
...

1. alte Routine, viel besser ist StrToFloat oder noch besser
Delphi-Quellcode:
if not TryStrToFloat(edt1.text, kurs) then !Fehler bei der Eingabe!
damit hast du gleich einen Test ob der Benutzer eine Zahl eingegeben hat
2. warum das ganze 3 mal, dann ist in kurs ja nur der Wert vom letzten Textfeld

Dann noch
Delphi-Quellcode:
Str(euro/kurs:8:2,s);
,da finde ich die Format Function besser.

Hier, wie ich es machen würde:
Delphi-Quellcode:
unit Unit1;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
type
  TForm1 = class(TForm)
    edt1: TEdit;
    edt2: TEdit;
    edt3: TEdit;
    lbl1: TLabel;
    lbl2: TLabel;
    lbl3: TLabel;
    btn1: TButton;
    btn2: TButton;
    procedure btn1Click(Sender: TObject);
    procedure btn2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
 
implementation

{$R *.dfm}
procedure TForm1.btn1Click(Sender: TObject);
var
  dollar,
  kurs : Single;
begin
  if TryStrToFloat(edt1.text, dollar) and
     TryStrToFloat(edt2.text, kurs)
  then
  begin
    edt3.text := Format('%f', [dollar / kurs]));
  end
  else
    ShowMessage('keine Zahl eingegeben'); // oder irgend eine ander sinvolle Meldung
end;

procedure TForm1.btn2Click(Sender: TObject);
var
  euro,
  kurs : Single;
begin
  if TryStrToFloat(edt3.text, euro) and
     TryStrToFloat(edt2.text, kurs)
  then
  begin
    edt1.text := Format('%f', [euro * kurs]));
  end
  else
    ShowMessage('keine Zahl eingegeben'); // oder irgend eine ander sinvolle Meldung
end;

end.
Da die beiden Click-Funktionen fast gleich sind, sollte man sie zu einer Funktion zusammendampfen:
Delphi-Quellcode:
procedure TForm1.btnClick(Sender: TObject);
var
  Waehrung,
  kurs : Single;
begin
  if Sender = btn1
  then
    eingabe_ok := TryStrToFloat(edt1.text, Waehrung)
  else
    eingabe_ok := TryStrToFloat(edt3.text, Waehrung);

  if eingabe_ok and
     TryStrToFloat(edt2.text, kurs)
  then
  begin
    if Sender = btn1 
    then
      edt1.text := Format('%f', [Waehrung * kurs]))
    else
      edt3.text := Format('%f', [Waehrung / kurs]));
...

rojhat2049 21. Nov 2009 21:10

Re: Währungsrechner funktioniert nicht
 
Bei uns ind der schule haben wir ein arbeitsbogen bekommen und der lehrer meinte wir sollen das so schreiben und da stand eben mit Val(.....)
und das wir ein doppelklick-ereigniss machen sollen und so

frag nicht warum der das so kompiliziert macht aber danke für deine Hilfe

Wolfgang Mix 21. Nov 2009 21:19

Re: Währungsrechner funktioniert nicht
 
Zeige uns doch einmal bitte den genauen Arbeitsauftrag.
Häufig scheitert unsere Hilfe an der genauen Fragestellung.

rojhat2049 21. Nov 2009 21:22

Re: Währungsrechner funktioniert nicht
 
Also da steht ein Quellcode eben mit lücken vielen lücken und wir sollen den füllen eine genaue fragestellung steht da nicht

und ich bin dann bei dem teil
Delphi-Quellcode:
 val(edt1.text.....)
hängen geblieben weil ic hdas falsch eingegeben hatte

Wolfgang Mix 21. Nov 2009 22:06

Re: Währungsrechner funktioniert nicht
 
Meine Glaskugel sagt; "Verstehe ich nicht"
Beschreibe das bitte doch einmal genauer!

Gruß

Wolfgang

rojhat2049 22. Nov 2009 15:07

Re: Währungsrechner funktioniert nicht
 
wir haben einen Quelllückentext bekommen

DeddyH 22. Nov 2009 15:40

Re: Währungsrechner funktioniert nicht
 
Und ebendieser scheint ein Staatsgeheimnis zu sein.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:37 Uhr.
Seite 2 von 2     12   

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