2016-09-22 21 views
0

に私は2つの小数30.630.15の乗算で問題を抱えています。私の計算機では、結果は4.60になるはずです。このことから小数点乗算は、PHP

$commission = bcmul(30.63, 0.15,2); 

結果は4.59です。

bcmulは10進数で作業することを前提としていましたが、

多くのおかげで、bcmulから$scaleパラメータのthe documentationから

+4

ごみをゴミ箱に投げ捨てる。 '30.63 x 0.15 = 4.5945'に近い4.59 –

+0

4.59が完璧な答えです。 – Dave

+1

あなたは正しいですか?計算機はビンにあります –

答えて

0

このオプションパラメータは、結果の小数点以下の桁数を設定するために使用されます。

これは、本質的に、それが使われている場合数は、例えば、(負の数またはアップ)ダウン四捨五入されることを意味し

> echo bcmul(0.99, 1, 1); 
0.9 

値の場合、30.63 * 0.15は4.5945に等しくなります。 $scaleの値を2に設定すると、報告したように4.59が得られます。

特に、結果が四捨五入されると予想している場合を除き、4.60が予想される理由はわかりませんup

関連する問題