Azzera filtri
Azzera filtri

How to keep a for loop going after error

51 visualizzazioni (ultimi 30 giorni)
Joe
Joe il 27 Feb 2016
Commentato: Joe il 6 Mar 2016
Hi,
I need to do a calculation that involves a for loop. In each iteration the for loop calls a function, and this function sometimes crashes. The fact that the function crashes sometimes it's expected and unavoidable.
The problem is that after the crash of the function, the for loop stops and I have to manually restart.
Is there a way to keep the for loop going after the error / crash (e.g. If the for loop needs to do 500 iterations and crashes in iteration 127, it just continues with iteration 128)

Risposta accettata

Stephen23
Stephen23 il 27 Feb 2016
Modificato: Stephen23 il 27 Feb 2016
doc try
Simply put in a try:
for k = 1:N
try
... code that might cause an error
catch % optional!
... optional code to run if above code fails
end
end
  2 Commenti
Image Analyst
Image Analyst il 27 Feb 2016
Exactly what I was going to say (so you earned a "vote" from me). Note that if you don't want to do anything, you can just put "continue" in the catch block to skip to the bottom of the for loop, or you can leave it totally empty (no lines at all in the catch block) in which case it will carry on with the for loop's code immediately after the "end" statement of the try/catch block.
Joe
Joe il 6 Mar 2016
Thanks both, works very well!

Accedi per commentare.

Più risposte (0)

Categorie

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

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by