51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2052|回复: 5
打印 上一主题 下一主题

[原创] 请教一下关于QTP中运算的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2011-7-6 19:18:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
只是一个很平常的比较运算,我不知道为什么算出来的结果不等

Dim Premium2
Dim Premium
Dim ApplyAmount
Dim SumPremium
Dim  result

Premium2 = 174719.17
Premium = 179774.52
ApplyAmount = 5000.00
SumPremium = 177806.25

result = Premium - round(Premium*ApplyAmount/SumPremium,2)

If Premium2 < result then
         msgbox "pass"
     Else msgbox "fail"&result
End If

结果是Premium2 比result 要大,fail 174719.17   应该相等啊 为什么呢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    开心
    2018-7-13 14:04
  • 签到天数: 6 天

    连续签到: 1 天

    [LV.2]测试排长

    2#
    发表于 2011-7-7 13:39:24 | 只看该作者
    If Premium2 < result then
             msgbox "pass"
         Else msgbox "fail"&result
    End If

    你这判断写的就有问题。
    Premium2 与result相等时,一定执行否则。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
    发表于 2011-7-7 15:43:05 | 只看该作者
    二楼说的和你执行得都没有问题。else包括了大于和等于
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2011-7-7 16:32:27 | 只看该作者
    本帖最后由 lanchozxd 于 2011-7-7 16:33 编辑

    浮点数不能这么比较的。。。 如果你改成cstr(a)= cstr(b) 就可以通过的你参考下
    http://www.vbgood.com/thread-102628-1-1.html 这个里边有说明的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
    发表于 2011-7-7 16:49:17 | 只看该作者
    感觉楼主是自己和自己较劲 呵呵
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
     楼主| 发表于 2011-7-8 11:45:13 | 只看该作者
    本帖最后由 hinjyo 于 2011-7-8 12:01 编辑

    四楼正解,一语中的,浮点数不能这样比较,
    问题已经解决
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-25 05:40 , Processed in 0.071671 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表