1条回答 默认 最新
- 信仰869 2021-11-10 12:05关注
浮点数比较大小,不能直接比较
浮点数比较大小,由于精度问题,所以直接比较有时可能会出错。
所以在比较的时候需要用一个很小的数值来进行比较。当二者差小于这个很小的数时,就认为二者是相等的了。这个很小的数,称为精度。
精度由计算过程中需求而定。比如一个常用的精度为1E-6.也就是0.000001.
所以对于两个浮点数a,b
如果fabs(a-b)<=1E-6,那么就是相等了。
fabs是求浮点数绝对值的函数。
类似的 判断大于的时候,就是if(a>b && fabs(a-b)>1e-6)。
判断小于的时候,就是if(a<b&&fabs(a-b)>1e-6)。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥20 ofstream覆盖写入
- ¥15 RBF-VSG姚凤军论文复现问题
- ¥30 开发一个APP商城在制作tabbar的时候运行不了代码没有检查出错误,但是显示不出tabbar,以下为运行结果,如何解决?
- ¥15 多网卡服务器中winform如何绑定指定网卡
- ¥15 看一看单片机上面的问题
- ¥15 关于#python#pandas#的问题,想要实现:多个TXT导入Excel,进行分列,不同txt之间都从第一行开始,请各位专家解答!
- ¥100 嘉南k510 开发板硬件接口
- ¥15 cmake编译github上项目出错
- ¥15 关于Lammps建模的描述
- ¥100 改写matlab程序(关键词-系统对)