关于浮点型计算遇到的小问题
最近考核任务里面用到了php计算和js计算 ,值得注意的是浮点型计算.float类型的数值是约等于.例如1.3 浮点类型的1.3=1.299999999循环,那么问题就来了.
浮点型在计算中主要会出现两种错误
1.修约计算 比如保留1位小数,0.003这样的比较小的数值会直接当成0来参与计算.所以计算的时候一定不要修约浮点型,包括计算的中间值也要尽可能保留足够精确的小数位.
2.判断 和上面类似.比如判断if(a>=0),如果结果进行了修约,a = 0.003,判断的结果是true而不是false;
以上是我遇到过的,欢迎随时补充!
学习如逆水行舟,不进则退. (说不定我的目的地是在下游呢.)