我在 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
- 1 回答
- 0 关注
- 82 浏览
添加回答
举报
0/150
提交
取消