Toll genau dazu hatte ich schon was geschrieben, und habe es aber dann doch gelassen. Ich weis, dass unter 5 abgerundet wird aber das darf bei dieser Berechnung nicht sein.
habe mir folgendes gedacht:
Bei der Rechnungsformel von Balthazar3k steht doch in der Klammer der Wert von der 3ten Stelle hinterm Komma.
echo $Wert_des_Quotienten . " (".round($round,3).")";
Wenn ich jetzt hergehe und einen Wert mit 0,010 angebe und diesen mit $round subtrahiere danach dann mit dem Gesammtwert addiere sollte doch Theoretisch dann immer aufgerundet werden.
Habe es mal so versucht:
$divisor='100.00';
$dividenden=3;
$Wert_des_Quotienten=round($divisor/$dividenden,2);
###########################################################
$round = $divisor/$dividenden;
$round -= $Wert_des_Quotienten;
$runda='0.010';
$ggp=round($dividenden*$Wert_des_Quotienten,4);
$rund =round($runda-$round,4);
$summe =round($Wert_des_Quotienten+$rund,4);
###########################################################
echo $Wert_des_Quotienten . " (".round($round,3).")<br /><br />";
echo 'Summe:' .$summe. ' <br /><br />';
echo 'bei der Gegenprobe kommt diese Summe raus:'.$ggp. ' <br /><br />';
echo 'Tatsächlicher Betrag ist:'.$divisor. ' <br /><br />';
Aber irgendwie stimmt da wieder was net.
bei ner Rechnung von 99.99 wäre ja das Ergebnis 33.33 Mit der Formel von mir würde er 33.34 ausgeben. Wäre zwar net schlimm, aber für die Weitere Berechnungen, die später noch hinzugefügt werden wäre es dann nicht mehr passend.
Also er sollte das Ergebnis dann so ausgeben:
bei Wert 99.99 -> 33.33 (Tatsächlicher Wert)
bei Wert 100.00 -> 33.34
bei Wert 100.01 -> 33.34
bei Wert 100.01 -> 33.34 (Tatsächlicher Wert)
bei Wert 100.02 -> 33.35
Das Problem ist, wenn ein Tatsächlicher Betrag vorhanden ist rechnet er dennoch plus 0.010 dadurch wird z.B. bei 99.99 nicht 33.33 sondern 33.34 angezeigt.
Ich hoffe ihr könnt mir jetzt weiterhelfen und versteht was ich meine.
Zuletzt modifiziert von Druide666 am 04.07.2008 - 16:26:09