Break nested loop and go to a specific line
    11 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    Syed Arafun Nabi
 el 11 de Dic. de 2022
  
    
    
    
    
    Comentada: Syed Arafun Nabi
 el 11 de Dic. de 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 comentarios
Respuesta aceptada
  Walter Roberson
      
      
 el 11 de Dic. de 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 comentarios
  Walter Roberson
      
      
 el 11 de Dic. de 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. 
Más respuestas (0)
Ver también
Categorías
				Más información sobre Logical en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

