Bug #13241: round() failed elementary level math
| From: | cnewbill at elementalrain dot com | Date: | Mon, 10 Sep 2001 22:08:03 +0000 |
| Subject: | Bug #13241: round() failed elementary level math | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-65706@lists.php.net to get a copy of this message | ||
From: cnewbill@elementalrain.com
Operating system: Linux 2.4.x
PHP version: 4.0.6
PHP Bug Type: Math related
Bug description: round() failed elementary level math
[Post from PHP-DEV]
<?php
$x = 10.95;
$y = 0.70;
$e = $x*$y;
print "Discounted price = $e\n";
var_dump($e);
$z = round($e, 2);
var_dump($z);
print "Rounded Price = $z\n";
// this works grrr
$x = round(7.665, 2);
print "Working example of round = $x\n";
?>
Produces
[cnewbill@storm cnewbill]$ php -q t.php
Discounted price = 7.665
float(7.665)
float(7.66)
Rounded Price = 7.66
Working example of round = 7.67
[cnewbill@storm cnewbill]$ php -v
4.0.6
Which is wrong, it should be 7.67. If I don't do the multiplication and
simply send round 7.665 it works right!!??
Any ideas?
-Chris
--
Edit bug report at: http://bugs.php.net/?id=13241&edit=1