PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wert korrekt teilen und runden


blackmolle
30.07.2009, 12:52:07
Hallo,

ich habe folgendes Problem:

Aus einer Datenbank bekomme ich einen Saldo aus zwei Werten übermittelt.

Dieser Wert muss aufgeteilt werden nach einem bestimmtem Schlüssel (einmal 80;20 und eimal 50;50).

80;20 stellt kein Problem dar, da durch die Rundung das Endergebniss alles korrekt ist.

Bei der 50;50 berechnung habe ich das Problem, dass 105,41 bei einer 50;50 Teilung keine korrekte Zahl ergibt. Ich muss dies nun runden.
Runde ich aber die beiden zahlen, so erhalte ich nicht einmal 52,71und einmal 52,70 sondern durch die 52,705 in beiden Werden 52,71. Ich habe also eine Differenz von einem Cent.

Wie realisiere ich es, dass dieses Problem korrekt geschlüsselt wird?

MfG Sandro

DokuLeseHemmung
30.07.2009, 13:07:07
Runde ich aber die beiden zahlen,
Dann lass das doch..
Eine berechnen und dann vom Ursprungswert subtrahieren.


Zeige doch mal deinen testbaren Beisiel Code.

blackmolle
30.07.2009, 13:34:06
Vielen Dank - manchmal sieht man vor lauter Bäumen den Wald nicht mehr - natürlich ist dies so machbar.

MfG Sandro

knight1
08.08.2009, 15:04:05
Hi,
probiers doch auch mal damit.
Eine 50;50 Teilung ist ja eine Divsion durch 2.

Also ich würde folgendermaßen vorgehen:


$division = bcdiv("105.41","2");
$gerundet = number_format ($division,"2",",",".");


Die Funktionen im PHP-Manual:
http://www.php.net/manual/de/function.number-format.php
http://www.php.net/manual/de/function.bcdiv.php


Kai aka Knight1