08/03/14 20:54:07
>>550
典型的な、浮動小数点誤差の問題だね。
一般的にコンピュータは数値を二進数に変換して処理する。
1.4という数値は二進数では近い数字は表現できても、
1.4そのものは表現できない数値なんだ。(小数点以下が無限に続く)
よって 45 × 1.3999・・・という計算になる。
当然答えも62.9999・・・になる。
あとはechoのとき、62.9999・・・というほぼ63という値なら、
それを63にして表示しているということだろう。
公式サイトにも書いてあるが。
URLリンク(www.php.net)