在plsql中,if then紧接着一个if then中间没有执行语句怎么理解?

min()是一个最小化参数的函数。
min(▲y)
min(α)
if flag_missed_target==0 then
if ▲x>0 then
if ▲y<10 or α<2° then
min(▲x)
else
min(▲x-1) // 后退一步并保持最小化▲y和α
end if
else
flag_missed_target=1
end if
end if

凡是这种if的嵌套,表示要满足上层的if条件才能进入,比如说
if A then
if B then
if C then

end if

end if
end if

就是满足了A才能进入if B的判断,满足了B(或者说满足A和B)才能进入C的判断。同样的,你的代码中只有满足了flag_missed_target=0的判断,才能进入▲x>0的判断,下面的都是一样的。当然,如果是
if A then
XXX...

if B then
end if
end if
表示满足A之后先执行XXX,之后才进行if B判断,这个XXX是根据你的需求写的,不一事实上非得存在。追问

如果if A不满足 ,直接end if是吗

追答

是的,如果外层不满足那根本不会执行它其中的内容

温馨提示:答案为网友推荐,仅供参考
相似回答