作者colawei (D逃)
看板Visual_Basic
标题Re: [VB6 ] 1 - 99.9 / 100≠0.001
时间Wed Jun 7 00:25:04 2006
想要解这个问题没那麽复杂,
其实只是变数型态转换时产生的误差而已.
加个小动作就可以解决了
Print 1 - CCur(99.9) / 100
用你的电脑跑跑看, 0.001 回来了!!
*以上的动作是转换成 Currency 的资料型态,
资料长度同 Double 有 8 Bytes,
有效范围从 -922,337,203,685,477.5808 到 922,337,203,685,477.5807
较常用於储存货币等资料.
而 Double 则较常用於数学公式计算.
如果不够用, 可以试试 CDec 转成 Decimal 有 14 Bytes, 小数位可以到 28 位,
一样不会造成计算问题, 需注意 Decimal 必须储存於 Variant 宣告中.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.80.140.77
1F:推 fumizuki:补充: Currency 的有效位数仅有4位 06/07 06:54
2F:→ Guestion:有点复杂的感觉@@再多查书看看 谢谢解惑:) 06/10 20:36