Break nested loop and go to a specific line
11 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Syed Arafun Nabi
am 11 Dez. 2022
Kommentiert: Syed Arafun Nabi
am 11 Dez. 2022
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 Kommentare
Akzeptierte Antwort
Walter Roberson
am 11 Dez. 2022
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 Kommentare
Walter Roberson
am 11 Dez. 2022
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.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!