永发信息网

VB中double计算误差较大的问题

答案:2  悬赏:50  手机版
解决时间 2021-01-27 03:23
我的代码定义的是double类型的,但是当数据太大时,计算结果的误差就会很大,请问如何解决这个问题啊。
Dim k0 As Double
Dim k1 As Double
Dim pt As Double
Dim p15 As Double
Dim p155 As Double
Dim a As Double
Dim vcf15 As Double
If p <= 770 And p >= 653 Then ''''''''''''''''''''653~770 石油产品
k0 = 346.4228
k1 = 0.4388

pt = p * (1 - 2.3 * 10 ^ (-5) * (t1 - 20) - 2 * 10 ^ (-8) * (t1 - 20) * (t1 - 20))

p15 = pt
Do

p155 = p15
a = k0 / (p155 * p155) + k1 / p155

vcf15 = Exp(-a * (t1 - 15) * (1 + a * (t1 - 15) * 0.8))
p15 = pt / vcf15

Loop Until Abs(p15 - p155) < 0.005
当t1的数值较大时,超过50的话,计算结果就会出现误差,而且误差较大,请问如何解决这个问题啊。我用了format函数,但是计算结果还是误差较大。
最佳答案
用浮点型总会出现尾部极小数。。。如果知道自己的数据的有效位数就可以截取然后转换成整形来计算。。。
全部回答
const本身就是常量的意识,在定义的时候复值所以没有表明类型也没问题 但是如果没有const 你的double就必须要有.因为double表示的是定义的变量的类型为浮点型,编程语言里要装载小数就要用浮点型变量. double的作用是声明变量的类型的.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
易学少儿培训中心地址在什么地方,想过去办事
酷派大神F2 8675FHD触摸屏能单换么
不锈钢304平放和弯折时厚度和软硬会发生变化
汇泽平板电脑h97a四核可以打电话吗?
从电脑复制到手机的电影播放起来老是很慢都是
有哪位明星要到西安来?
冰与火舞蹈学校怎么去啊,我要去那办事
有没有末世bL小说,带空间的,最好是系统文
引睡的意思是什么啊?知道的请说下!
为什么从微信里点腾讯新闻不自动跳转?
C语言求解。为什么会崩溃的。。!!
数据总线宽度是指什么?
青蛙知了都属于什么动物
河北、北京等地高考报名可以延迟时间报名么?
丝瓜汁的功效与作用
推荐资讯
君翰教育(石嘴山六小校区)地址有知道的么?有
河北工业职业技术学院代码
用天正暖通画水管线和风管线时,如何让他们的
资质升级中的单项建安合同额是啥意思?
急急急顺丰快递没到目的地,可以在中转点领包
15款经典明锐怎么定不到车
响水华顺驾校地址好找么,我有些事要过去
一方网吧地址在什么地方,想过去办事
高速公路与普通公路最明显的感觉是什么?
大众polo冷却液加的满出来了有没有关系
掌握如何画眼线的4大重点,清纯眼线风靡时尚(
鑫星幼儿园(漳州龙海)地址在哪,我要去那里办
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?