c语言解一元二次方程时候为什么用fabs(a)<=1e—6而不是直接a==0?
答案:2 悬赏:50 手机版
解决时间 2021-02-06 12:09
- 提问者网友:孤山下
- 2021-02-05 13:16
c语言解一元二次方程时候为什么用fabs(a)<=1e—6而不是直接a==0?
最佳答案
- 五星知识达人网友:玩家
- 2021-02-05 14:01
它的意思是想得到a=0的情况,但浮点数在用二进制表示时绝大部分是近似值,本来是0的算出来只是在0附近,所以当a的值在-0.000001和+000001之间是就认为是0了。当然还可以取得小些,这根据需要定!
全部回答
- 1楼网友:躲不过心动
- 2021-02-05 15:27
你的这个是二分法求方程的?
如果是的话,那么就是精度不够,逼近0的时候肯定会溢出
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯