Azzera filtri
Azzera filtri

How to exist out of 2 for loops.

2 visualizzazioni (ultimi 30 giorni)
Max
Max il 24 Ott 2015
Commentato: Walter Roberson il 24 Ott 2015
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.

Risposte (1)

Walter Roberson
Walter Roberson il 24 Ott 2015
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 Commenti
Max
Max il 24 Ott 2015
I'm not really sure what you mean, I have sent you a direct message via your profile.
Walter Roberson
Walter Roberson il 24 Ott 2015
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

Accedi per commentare.

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by