以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://www.weistock.com/bbs/list.asp?boardid=4)
----  [求助]条件判断问题  (http://www.weistock.com/bbs/dispbbs.asp?boardid=4&id=182561)

--  作者:vakoth
--  发布时间:2020/10/19 1:21:37
--  [求助]条件判断问题
   为什么

 if A>0 then begin 
        CD:=C;
        GB:=GB /CQ;
   end
    else begin
        CD:=O;
        GB:= 0 - (abs(GB) /CQ);
    end

这个可以

 if A>0 then 
        CD:=C;
        GB:=GB /CQ;
    else 
        CD:=O;
        GB:= 0 - (abs(GB) /CQ);

却会出错报警


--  作者:FireScript
--  发布时间:2020/10/19 8:48:30
--  
 你不用begin  end  系统会认为你的第一个if...then... 代码块是在 CD:=C; 位置就结束了。

--  作者:vakoth
--  发布时间:2020/10/19 12:22:09
--  
那是不是说,一个条件判断结果超过一个,即使没有后面的else判断结果,也必须使用begin  end 是么?如果不用,即使软件不报错结果会出现异常是么?
[此贴子已经被作者于2020/10/19 12:22:49编辑过]

--  作者:FireScript
--  发布时间:2020/10/19 13:05:42
--  
 if...then 后面超过一句 就必须用begin end 组织代码。


--  作者:vakoth
--  发布时间:2020/10/20 1:05:04
--  
好的谢谢版主,辛苦了!!

又排了一个雷,谢谢谢谢!!
[此贴子已经被作者于2020/10/20 1:05:49编辑过]