我在 PHP 上操作這個(gè)數(shù)字時(shí)遇到了問題前任:72 ** 79 % 3337當(dāng)我使用echo 72 ** 79 % 3337 // Result is int(0)然后我嘗試分成這個(gè)$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但是,我想要的結(jié)果是 285,而當(dāng)使用 Python 時(shí),答案是正確的。為什么會這樣?任何解決方案?
1 回答

Qyouu
TA貢獻(xiàn)1786條經(jīng)驗(yàn) 獲得超11個(gè)贊
您溢出了浮點(diǎn)分辨率,因此您需要使用 bcmath 進(jìn)行所有數(shù)學(xué)運(yùn)算,包括求冪:
$num = bcpow(72, 79);
echo bcmod($num, 3337);
輸出
285
- 1 回答
- 0 關(guān)注
- 110 瀏覽
添加回答
舉報(bào)
0/150
提交
取消