While loop with all elements meeting the conditions

How do I set a while loop that runs until all elements meet the condition? For instance:
t = -100:200;
F = t;
indices = 1:100;
while F(indices) < 0 %
indices = indices + 1;
end
This while-loop only will run, until one of the elements of F(indices) will be creater than 0. However I wish it will run until all of the elements will meet the condition. How to implement this?

 Accepted Answer

t = -100:200;
F = t;
indices = 1:100;
while all(F(indices)<0)
indices = indices + 1;
end

4 Comments

I also thought of it but apparently this is not working because it also stops as soon as one component is greater zero. If it was working right, indices should be an array from 101:201 actually.
Then you must code
t = -100:200;
F = t;
indices = 1:100;
while any(F(indices)<0)
indices = indices + 1;
end
Then the while loop continues until all elements of F(indices) are >=0.
Yes, @Torsten is correct, I did not properly understand the question before.
Awesome, thank you so much!

Sign in to comment.

More Answers (0)

Categories

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

Tags

Community Treasure Hunt

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

Start Hunting!