作者jimpop (popmij)
看板Visual_Basic
标题[VB6 ] 要怎麽准确计算小数点?
时间Wed May 6 00:13:54 2009
我使用的是 VB 2005 不知道分类有没有错!?
最近在写一个特别的计算机~
写着写着却发现....
似乎小数点的计算有些问题~~
如:
12.55-12.54 应该是 0.01 !!
但是得到的答案是
0.0100000000000016
!!!!!!!!!!!!!!!
怎麽会这样~~~
爬过文後~发现~似乎一直存在这问题~~
有试过用网路上有篇的做法~
http://tinyurl.com/cdddaz
但是....不知道是它的版本关系还是我弄错~~
我还是会有严重的误差值
想请问各位大大~~有没有解决方法呢!!??
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 125.229.92.80
1F:推 Peruheru:我的做法是 05/06 11:00
2F:→ Peruheru:假如我要娶到小数点後五位,我就乘上一万,再无条件舍去 05/06 11:01
3F:→ Peruheru:之後再除以一万这样XDD 05/06 11:01
4F:→ Peruheru:小数点的精准度本来就会有所误差,还蛮难解决的 05/06 11:01
5F:→ Peruheru:之前做到因为有小数点後很多位加上很大的数 05/06 11:02
6F:→ Peruheru:搞到运算结果变成overflow还是underflow我都搞不清楚了 05/06 11:02
7F:→ adrianshum:楼上的做法是没法解决问题的.误差不会因为这样做而消失 05/06 21:09
8F:推 Peruheru:我知道啊...这只是一个治标不治本的方法 05/06 22:33
9F:→ MOONRAKER:format位数弄少一点就好了 正常人谁会需要算到小数点下 05/07 01:59
10F:→ MOONRAKER:十几位 所有的浮点运算都需要适当的format 05/07 01:59
11F:→ jimpop:p大~我了解了~~这个方法也不错~~谢谢!! 05/07 17:07