How to exist out of 2 for loops.

2 次查看(过去 30 天)
Max
Max 2015-10-24
for i=1:(q+1)
......
for ...
if ...
break
end
end
end
Im having trouble breaking out of the first for loop. My code runs and finishes the second for loop. I want it to stop after the second for loop is finished running but instead it goes back to the first for loop and starts the whole thing over which obviously messes up the values I've produced in the second for loop. Basically I want the whole script to end after the second for loop is finished fully running.

回答(1 个)

Walter Roberson
Walter Roberson 2015-10-24
You could call quit, which would exit MATLAB entirely. If you were within a function, you could call return to leave the function.
Otherwise you cannot exit two nested loops. You can, however, set a flag that indicates you want to exit the outer loop and have the outer loop test it.
done_this_stuff = false;
for K = ...
for J = ...
if ...
done_this_stuff = true;
break
end
...
end
%now we are in just the outer loop
if done_this_stuff
break
end
...
end
  2 个评论
Max
Max 2015-10-24
I'm not really sure what you mean, I have sent you a direct message via your profile.
Walter Roberson
Walter Roberson 2015-10-24
done_this_stuff = false;
for i=1:(q+1)
......
for ...
if ...
done_this_stuff = true;
break
end
end
if done_this_stuff
break
end
end

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by