Entwickler-Ecke
Sonstiges (Delphi) - Multiplikation mit Prozentzahlen
boebel - Do 20.03.08 01:25
Titel: Multiplikation mit Prozentzahlen
Hallo
Kann für folgendes Problem keine Lösung finden, vielleicht hat mir jemand einen Vorschlag?
Ich will mit folgender Funktion eine Zahl mit einer Prozentzahl multipliziern (EKKU * MWST => 10 * 7.6%)
Delphi-Quelltext
1: 2: 3: 4: 5:
| function EKKUMWST_calc (EKKU, MWST:Real) : Real; begin result:=EKKU*MWST; EKKUMWST:=result; end; |
Ich könnte ja in der Variable "MWST" auch einfach den Wert '107.6' zuweisen, dann funktionierts.
Jedoch soll der Anwender die MWST selber bestimmen können und der trägt dann nur z.B. '7.6' oder '19' ein.
Gibt es eine Möglichkeit direkt mit Prozentzahlen zu multiplizieren?
Oder muss ich das anders angehen?
Vielen Dank für eure Hilfe.
Sirke - Do 20.03.08 01:38
Eine Prozentzahl ist ja wie der Name sagt 1/100 ... folglich kann man einfach 1 + MWST / 100 rechnen und bekommt die richtigen Faktoren: Bsp. für 19 -> 1 + 19 / 100 = 1.19!
boebel - Fr 21.03.08 14:54
Hallo Sirke
Vielen Dank für deine Hilfe. jetzt wo du es sagst, erinnere ich mich an die Schulzeit. Da hatte mein Taschenrechner noch keine "%-Taste". Da musste ich das ja auch immer mit /100 rechnen.
Falls das mal jemand interessiert, so funktionierts:
Delphi-Quelltext
1: 2: 3: 4: 5:
| function EKKUMWST_calc (EKKU, MWST:Real) : Real; begin result:=EKKU+(EKKU*MWST/100); EKKUMWST:=result; end; |
Hidden - Fr 21.03.08 15:07
Hi,
Bei der Gelegenheit kannst du dich auch direkt mal mit ausklammern beschäftigen, schaden wirds bestimmt nicht:
Delphi-Quelltext
1: 2: 3: 4: 5:
| function EKKUMWST_calc (EKKU, MWST:Real) : Real; begin result := EKKU * (1 + MWST/100); EKKUMWST := result; end; |
mfG,
boebel - Fr 21.03.08 15:17
Hi Hidden
Vielen Dank für den Tipp. Ist bestimmt die vernünftigere Lösung :-)
EKKUMWST ist ne Variable die ich in der Unit definiert hat.
Rufe in einer Prozedur zuerst die Funktion "EKKMWST_calc" auf und danach schreibe ich das Ergebnis in ein Label.
Delphi-Quelltext
1: 2:
| EKKUMWST_calc(EKKU,MWST); Label1.Caption:=floattostr(EKKUMWST); |
elundril - Fr 21.03.08 16:21
warum nicht gleich
Delphi-Quelltext
1:
| Label1.Caption:=floattostr(EKKUMWST_calc(EKKU,MWST)); |
da sparst du dir eine variable und die funktion bekommt auch ihren sinn wieder. (weil ansonsten hättest du ja auch ne procedure nehmen können)
lg elundril
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!