扫码关注官方订阅号
这就是将double 换成 int 后的结果了
业精于勤,荒于嬉;行成于思,毁于随。
本来是没问题的,但是你这里输入的n和m太大,整数溢出了,导致i * i溢出之后变成了0,发生了分母的除零异常。
n
m
i * i
0
1/(i*i) 是两个整数相除(这种情况下,1/3 不等于 0.3333... 而等于 0),我想你需要用 1.0/(i*i) 这样才可以。鉴于 i*i 确实可能是 0,你最好提前判断一下。
1/(i*i)
1.0/(i*i)
i*i
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
本来是没问题的,但是你这里输入的
n
和m
太大,整数溢出了,导致i * i
溢出之后变成了0
,发生了分母的除零异常。1/(i*i)
是两个整数相除(这种情况下,1/3 不等于 0.3333... 而等于 0),我想你需要用1.0/(i*i)
这样才可以。鉴于i*i
确实可能是 0,你最好提前判断一下。