Einzelnen Beitrag anzeigen

Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#9

Re: Kleines Rechnungsprogramm

  Alt 9. Okt 2005, 10:27
Hai Final,

deinen Code kannst Du wesentlich verkürzen und damit mögliche Fehler vermeiden. In der Berechnung ist ja nur das Porto der verändernde Faktor. Also reicht es aus wenn Du dir in einer Variable den Betrag für das Porto speicherst und in den Berechnungen dann diese Variable verwendest:
Delphi-Quellcode:
procedure TForm1.btn_TestenClick(Sender: TObject);
var
  netto : Extended;
  mwst : Extended;
  brutto : Extended;
  porto : Extended;
Begin
  porto := 0;
  netto := strtofloat(edt_Betrag1.text)
          + strtofloat(edt_Betrag2.text)
          + strtofloat(edt_Betrag3.text);
  if netto < 100 then
  begin
   porto := 7.5;
  end;
  lbl_Porto.Caption := FloatToStr(porto);
  mwst := (netto + porto) * 0.16;
  lbl_Summe1.caption := FloatToStr(mwst);
  brutto := (netto + porto) * 1.16;
  lbl_Summe2.caption := FloatToStr(brutto)
end;
Natürlich sollte verhindert werden das in den Editfeldern etwas anderes als gültige Zahlen stehen. Sonst würde bei der Umwandlung mit StrToFloat ein Fehler auftreten.

Immer eines Berücksichtigen:
Im Quellcode ist der Dezimalseperator ein "." ist (3.56 oder 2.78 ). Bei der Umwandlung mit StrToFloat wird aber der in Windows eingestellte Delphi-Referenz durchsuchenDezimalSeperator verwendet. In Deutschland als 3,56 oder 2,78.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat