我有这样的嵌套:
if (condition 1)
if (condition 2)
statement
end
else
if (condition 3)
statement
end
end
这两个陈述是一样的。 如此写入,仅当条件1不满足时才进入条件3,而如果条件2不满足则中断语句的执行。相反,我希望我的代码也跳到条件3,在这种情况下只有条件2不满足(条件1是)。 我应该使用任何“中断”或“切换”,还是只需更改我的嵌套if的处置?
编辑:基本上我想要如果条件1满足但条件2不满足它跳到条件3。 换句话说,如果符合以下条件,我希望验证条件3: 1)条件1不满足; 2)满足条件1但不满足条件2。
答案 0 :(得分:2)
你需要的是(请注意,在matlab中你不需要括号来表示if条件):
if (condition1 && condition2) || condition3
statement
end
答案 1 :(得分:1)
您必须考虑逻辑,何时输入statement
:
现在我们可以使用逻辑OR ||
和逻辑AND &&
将所有内容放入一个if子句中。
我们还可以将1.和3.术语结合起来
这一起给出了:
if (condition1 && (condition2 || condition3)) || (~condition1 && condition3)
statement
end
答案 2 :(得分:-1)
感谢你的所有建议。他们真的帮我找到了答案。最后我解决了我的问题:
if (condition 1) && (condition 2)
statement
else
if (condition 3)
statement
end
end