Please help in convergence of the array

1 view (last 30 days)
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.

Accepted Answer

Guillaume
Guillaume on 4 Aug 2016
Edited: Guillaume on 4 Aug 2016
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 Comments
Stephen23
Stephen23 on 4 Aug 2016
@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 on 4 Aug 2016
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.

Sign in to comment.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!