打印本文打印本文 关闭窗口关闭窗口

错误逻辑引发的思考 - TradeBlazer公式

作者:开拓者 TB 来源:cxh99.com 发布时间:2012年08月31日
  • 咨询内容: 最初的设了一个判断语句 if((con1) or (con2))  .....
    后来突然想到一个思路 没有仔细思考逻辑关系就加了一个 if ((con3) && ((con1) or (con2)) ).....
    现在出现的问题是当con3=false的时候 后面是返回是true    代码也往下执行了
    百思不得起解  求教各位大侠

     

  • TB技术人员: 请问你用的是最新版本吗?
    在4.2.5中,用以下代码测试,证明无上述问题
    1. Vars
    2.         Bool a;
    3.         Bool b;
    4.         Bool cc;
    5.         Bool dd;
    6.         Bool e;
    7. Begin
    8.         a=False;
    9.         b=True;
    10.         cc = True;
    11.         dd = a && (b || cc);
    12.         Commentary("dd = "+IIFString(dd,"True","False"));
    13. End
    复制代码

     

  • TB客服:
    lh948 发表于 2012-4-17 09:39
    请问你用的是最新版本吗?
    在4.2.5中,用以下代码测试,证明无上述问题

    谢谢管理员及时回复

    我是用的是4.2.5版 我的情况是b cc 不会同时为true;  a的判断 用了“!=” 但是用括号括在里面了。确实问题很奇怪  昨天我把代码修正了一下 把判断多分了一层写 就没有问题了

     

  • 网友回复:
    ggyyff 发表于 2012-4-17 10:44
    谢谢管理员及时回复

    我是用的是4.2.5版 我的情况是b cc 不会同时为true;  a的判断 用了“!=” 但是用括 ...

    您说的情况我也试过,没有问题的
打印本文打印本文 关闭窗口关闭窗口