PHP 4.0 Bug #10131 Updated: Round error
| From: | woprog at hotmail dot com | Date: | Tue, 03 Apr 2001 09:16:48 +0000 |
| Subject: | PHP 4.0 Bug #10131 Updated: Round error | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-50665@lists.php.net to get a copy of this message | ||
ID: 10131
User Update by: woprog@hotmail.com
Status: Closed
Bug Type: Math related
Description: Round error
Previous Comments:
---------------------------------------------------------------------------
[2001-04-03 03:46:38] woprog@hotmail.com
Execute this script:
<?
$a = 250.02;
$b = 210.10;
$c = 39.92;
echo "a = $a<br>n";
echo "b = $b<br>n";
echo "c = $c<br>n";
echo "(b+c)-a = " . (($b+$c)-$a) . "<br>n";
?>
It SHOULD echo:
a = 250.02
b = 210.1
c = 39.92
(b+c)-a = 0
But it echoes on my machine:
a = 250.02
b = 210.1
c = 39.92
(b+c)-a = -2.8421709430404E-14
When you change the values, for example like this:
<?
$a = 250.022;
$b = 210.101;
$c = 39.921;
?>
it echoes the correct values... if against all odds I am doing something wrong, please tell me....!
Marc, a very happy php programmer!
P.S. I compiled PHP with this command line:
'./configure' '--with-mysql' '--with-pgsql' '--with-esoob'
'--with-magic-quotes' '--with-apxs' '--with-ftp'
'--with-config-file-path=.'
---------------------------------------------------------------------------
Full Bug description available at: http://bugs.php.net/?id=10131