Matlab写的一个程序,有5个for循环,想用break跳出到其中一个,怎么实现?

程序的结构是这样的
for
for
for
for
for
.
.
.
E()=
if mE>1
break
end
end

end
end
(A)
end
end
想要E满足条件时,就用break跳到A的位置,怎么实现呢?

第1个回答  2012-09-14
你可以把当中那块写成函数,用return跳出追问

非常感谢你的回复,

想再问一下,写成函数的话怎么指定到A位置呢?
比如说if E>1,
return
end;
这样吗?
能不能在稍微详细的介绍下? 谢谢

追答

从第三个for起都写入一个函数,通过return来跳出函数
不过如果写成函数,输入输出的变量太多的话,还是每个for循环里插个break

追问

我试了一下你的方法,应该是可以的。但我的程序很复杂,因为最中间的一个E的值也取决于最外面两层的循环。就像这样
for f=1:100
for N=1:100
for t=1:100
for m
for n
E=... %E是(f,N,t,m,n)的函数
if E>1
。。。
请问有没有简单点的办法呢?

追答

matlab没有goto之类的命令,你只能每个for循环里插个break,当然根据程序的实际情况可能能简化

本回答被提问者采纳