Please help in convergence of the array

2 次查看(过去 30 天)
for l = 1:6
c11 (l)=opt11{l};
end
output = c11 =
Columns 1 through 5
89.0475 98.7932 98.7932 98.7932 98.7932
Column 6
98.7932
I want to break the loop "l" in program if c11(i+1)<=c11(i). please help me.

采纳的回答

Guillaume
Guillaume 2016-8-4
编辑:Guillaume 2016-8-4
Well, you already nearly wrote the answer yourself!
for ...
... do something
if condition
break; %stop the loop
end
end
So, in your case, probably:
for l = 1:6
c11(l) = opt11{l}
if l>1 && c11(l) <= c11(l-1)
break;
end
end
Of course, the above could be just written without the loop:
c11 = cell2mat(opt11(1:6));
c11 = c11(logical(cumprod(diff(c11) > 0)));
  3 个评论
Stephen23
Stephen23 2016-8-4
@Triveni: it sounds like you are really trying achieve some task which you have not told us about. Rather than getting us to fix some broken code, it would be better if you actually described what you are trying to achieve:
Triveni
Triveni 2016-8-4
Actually if i post whole code then you need to pay attention at-least for 5 to 10 minutes to analyze my code. My question is not so difficult, i have to stop only loop in different circumstances which i have told you.
[93.6568] [98.9636] [93.4562] [103.8119]
Columns 5 through 8
[101.4730] [103.8119]
In column 1, 2, 3, 4, and 5 value increase and then decrease, then value is continuously increase and decrease. If increase and decrease is steady then i have to break my loop. I have to find out maximum value from c11. When value is not maximizing and it's going steady then i need not to solve it.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by