Return back to a specific line
117 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I have more while and for loop, I need to go beginning. ex:
1. while ()
2. for ()
3. if (condition)
4. Go back to starting of the code i.e line 1
5. else
6. code for some action
7. end
8. end
8. for ()
9. some calculation
8. end
9. end
I need like this, Please help. If I use break, it will break that first for loop only and it will go to next for loop, but I don't want that.
Risposte (1)
Adam Danz
il 18 Apr 2019
Modificato: Adam Danz
il 23 Apr 2019
Here's a functional example that you can run or step through in debug mode. The flag 'continueForLoop' determines whether the for-loops will continue execution.
c = 0; %counter for while-loop
while c < 5
% Reset flag (when true, for-loop continues)
continueForLoop = true;
for i = 1:5
if rand(1) < 0.5 && continueForLoop
% set flag that will ignore the rest of the for-loop
continueForLoop = false;
elseif continueForLoop
disp('For-loop continues')
end
end
if continueForLoop
for j = 1:3
x = rand(1);
end
end
% increment counter
c = c+1;
end
2 Commenti
Guillaume
il 23 Apr 2019
I would add a break in the first if instead of the ContinueForLoop test. There's no point continuing iterating the first for to just do nothing.
c = 0; %counter for while-loop
while c < 5
% Reset flag (when true, for-loop continues)
continueForLoop = true;
for i = 1:5
if rand(1) < 0.5
% set flag that will ignore the rest of the for-loop
continueForLoop = false;
break; %and bail out of current for loop
elseif continueForLoop
disp('For-loop continues')
end
end
if continueForLoop
for j = 1:3
x = rand(1);
end
end
% increment counter
c = c+1;
end
Vedere anche
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!