我是一个VB新手,自己没事看一点VB,自己动手做了一个计算器!虽然只是一个小小的计算器,自己也非常的高兴,没事经常打开计算器玩!(呵呵!别晕哦!新手对于刚做东东都是这样!)也是发现了一个问题,请教过几个人,都没有几决!(只是小儿科,所以他们没放在心上!:()所以只好来这请教了!问题:
在用计算器计算时,只是结果是
0.1 0.01 0.001 或0.0001…………等等这类的结果时,得到的都不正确!用JAVA做的也不正常!不过自我理解应该是由双精度转成字符串造成的!哪位大虾能想到解决的办法吗?(不用0。1+1转成字符再把字符换成0。1)
在用计算器计算时,只是结果是
0.1 0.01 0.001 或0.0001…………等等这类的结果时,得到的都不正确!用JAVA做的也不正常!不过自我理解应该是由双精度转成字符串造成的!哪位大虾能想到解决的办法吗?(不用0。1+1转成字符再把字符换成0。1)
那我以后也可以提问了。
一直以为这个里面都是高手。
没有人帮我解答很低甚至是很白的问题的。
现在好了发现和我差不多的人了。
楼主我们一同努力。一起学习了
加油呀。
我现在计算器还不会做呢。
哈哈。我的问题更多了。。
a=5.5
b=5.4
//或者a=5.6 b=5.5 或者 a=5.55 b=5.54 只要差的是0.N1就出错
msgbox a-b
你们说出一的对话框的数字会是几呢??????^_^
大家可别让我转成字符串再转过来哦~~~
b=5.4
msgbox a-b
应该出现一个对话框 0.1
你可以去试一下!
我想应该是由转DOUBLE转STRING时出现的!但是我想不从字符串上下手各位谁知道还什么办法吗?
IMPOSSIBLE!我也希望IMPOSSIBLE,但是问题就是出现了!:(
用Round函数解决你的问题,示例:Round((a - b), 5)
Round 是四舍五入函数,
其实是四舍六入函数!
对所有的开发语言都是一样
//对所有的开发语言都是一样应当是Double,Long型不能计算小数