作业帮 > 数学 > 作业

vb中为什么(a+b+c)/2 不等于a/2+b/2+c/2 ?

来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/05/24 19:43:27
vb中为什么(a+b+c)/2 不等于a/2+b/2+c/2 ?
估计因为a,b,c都是整型吧,a/2运算结果是整数,1/2=0而不是0.5
java和C语言是这样vb应该也是一样的吧
再问: 我是在算三角形面积里用到的 但是 我打的是除法 / 不是 \ 啊
再答: 我知道你打的/是除号,你把2都改成2.0试试,看看结果一样了没...
再问: 可不可以告诉我原因啊........迷茫中
再答: 我也不太清楚你具体什么问题的- -|,改成2.0好了没有,如果行了我就知道你问题出哪了。。。我原来写过VB,不过到现在很长时间没写了 如果一样了的话就是精度问题了,当a,b,c是整数的时候,a/2就会当整数计算进行四舍五入 a是3的话a/2=2,因为3÷2=1.5但是由于a和2都是整数,所以运算的精度是整数,所以最后的结果1.5会被自动进行四舍五入转化成整数2,所以两边就不等了,所以改成2.0之后精度就会变成浮点形,所得的结果也会是1.5而不是2,两个值就基本相等了