ID: 36008
User updated by: adi at rogers dot com
Reported By: adi at rogers dot com
Status: Open
Bug Type: Math related
Operating System: win32 only
PHP Version: 5CVS-2006-06-14
New Comment:
Amen to that ;)
Previous Comments:
------------------------------------------------------------------------
[2006-10-10 07:45:36] troy20 at mail dot ru
Code:
for ($i = 1.075;$i <= 1.975;$i=$i+0.1)
{echo round($i,2);}
Result:
1.08, 1.18, 1.28, 1.38....
But if
echo round(1.275,2);
echo round(1.275*100);
we have 1.27 and 127.
Another "same" example:
for ($i = 1.075;$i <= 20.975;$i=$i+0.1)
{echo round($i,2);}
Win2003 + Apache 2.0.59 + php 5.1.6
------------------------------------------------------------------------
[2006-06-14 22:11:53] adi at rogers dot com
Regretfully, the same output:
5.2.0-dev
Wrong: 14.37
Wrong: 14.37
'Magically' correct: 14.38
'Magically' correct: 14.38
Converted to string and is now correct: 14.38
Converted to string and is now correct: 14.38
The 32 precision results are also the same [as the ones on January 15].
------------------------------------------------------------------------
[2006-06-14 15:50:08] [EMAIL PROTECTED]
Please try using this CVS snapshot:
http://snaps.php.net/php5.2-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php5.2-win32-latest.zip
------------------------------------------------------------------------
[2006-01-15 06:40:25] adi at rogers dot com
Oh, and as I had suspected, here is the value of $num with 32
precision: 14.374999999999998
With 12 as the precision, it is: 14.375
------------------------------------------------------------------------
[2006-01-15 06:34:25] adi at rogers dot com
As requested, the exact output with 32 as the precision:
Wrong: 14.369999999999999
Wrong: 14.37
'Magically' correct: 14.380000000000001
'Magically' correct: 14.38
Converted to string and is now correct: 14.369999999999999
Converted to string and is now correct: 14.37
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/36008
--
Edit this bug report at http://bugs.php.net/?id=36008&edit=1