Break nested loop and go to a specific line
11 次查看(过去 30 天)
显示 更早的评论
My code has the following sturcture. Inside the nested loop I want to break the loop & want to go Statement 1 & Statement 3.
. . .
. . .
. . .
for index = values
Statement 1
Statement 2
Statement 3
Statement 4
if expression
. . .
if expression
[Go to Statement 1]
else expression
[Go to Statement 3]
. . .
. . .
. . .
I have added the lines to clarify further.
0 个评论
采纳的回答
Walter Roberson
2022-12-11
That is not possible in MATLAB, and will never be possible in MATLAB.
You need a framework something like this
repeat_1 = true;
while repeat_1
repeat_1 = false;
Statement 1
Statement 2
repeat_3 = true;
while repeat_3
repeat_3 = false;
Statement 3
Statement 4
if expression1
if expression2
repeat_1 = true;
break;
else
repeat_3 = true;
continue;
end
end
if ~repeat_3
statements after tests that are to be skipped if you GOTO Statement 3
end
end
if ~repeat_1
statements after tests that are to be skipped if you GOTO Statement 1
end
end
3 个评论
Walter Roberson
2022-12-11
repeat_1 = true;
while repeat_1
repeat_1 = false;
Statement 1
Statement 2
repeat_3 = true;
while repeat_3
repeat_3 = false;
Statement 3
Statement 4
if expression1
if expression2
repeat_1 = true;
break;
else
repeat_3 = true;
continue;
end
Extra C
end
if ~repeat_3
Extra B
end
end
if ~repeat_1
Extra A
end
end
However this will warn you that Extra C is unreachable.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!