为了账号安全,请及时绑定邮箱和手机立即绑定

PHP 上的模数结果错误,但 Python 上的结果正确

PHP 上的模数结果错误,但 Python 上的结果正确

PHP
动漫人物 2022-06-11 09:35:57
我在 PHP 上操作这个数字时遇到了问题前任:72 ** 79 % 3337当我使用echo 72 ** 79 % 3337 // Result is int(0)然后我尝试分成这个$num = number_format(72 ** 79, 0, '', '');echo $num % 3337;   // Result is 1069然后我再次尝试使用 fmod() 和 bcmod()$num = number_format(72 ** 79, 0, '', '');echo fmod($num, 3337);        // Result is 2255echo bcmod($num, 3337);       // Result is 2255但是,我想要的结果是 285,而当使用 Python 时,答案是正确的。为什么会这样?任何解决方案?
查看完整描述

1 回答

?
Qyouu

TA贡献1786条经验 获得超11个赞

您溢出了浮点分辨率,因此您需要使用 bcmath 进行所有数学运算,包括求幂:


$num = bcpow(72, 79);

echo bcmod($num, 3337);

输出


285


查看完整回答
反对 回复 2022-06-11
  • 1 回答
  • 0 关注
  • 82 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信