#20365 [Opn->Bgs]: the modulo operator % doesn't work with negative integers!
| From: | derick@php.net | Date: | Mon, 11 Nov 2002 17:51:36 +0000 |
| Subject: | #20365 [Opn->Bgs]: the modulo operator % doesn't work with negative integers! | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-24604@lists.php.net to get a copy of this message | ||
ID: 20365
Updated by: derick@php.net
Reported By: Ernest@Beinrohr.sk
-Status: Open
+Status: Bogus
Bug Type: Math related
Operating System: linux
PHP Version: 4.2.2
New Comment:
Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to
report
a bug at http://bugs.php.net/how-to-report.php
No, it should be -4. If even BC says it who are we to go into that?
Previous Comments:
------------------------------------------------------------------------
[2002-11-11 11:09:47] Ernest@Beinrohr.sk
Yes, you are right, the output is not NULL, it's -4.
BUT, it should be 6.
PS: but bc gives -4 too, now I do not understand. I suppose, BC is
wrong too. It should be 6. [ -4=6 (mod 10) ]
------------------------------------------------------------------------
[2002-11-11 09:53:41] sniper@php.net
Please try using this CVS snapshot:
http://snaps.php.net/php4-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php4-win32-latest.zip
works fine here too..(with 4.3.0-dev) so try the snapshot.
------------------------------------------------------------------------
[2002-11-11 09:51:16] derick@php.net
Works fine (it should output -4):
[derick@kossu derick]$ php
<?php
$a = -4 % 10;
var_dump($a);
?>
int(-4)
Please provide a short script that reproduces this problem.
Derick
------------------------------------------------------------------------
[2002-11-11 09:40:40] Ernest@Beinrohr.sk
PHP's modulo operator cannot work with negative numbers. The positive
ones work fine, but modulo is defined also on negatives ;-)
ex: 10%3 = 1 [php gives 1]
-4%10 = 6 [php gives NULL]
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=20365&edit=1