coding a conditional for loop

113 ビュー (過去 30 日間)
K Kee
K Kee 2015 年 11 月 2 日
コメント済み: Walter Roberson 2019 年 3 月 9 日
I would like to know what code I need to write a conditional for loop. More specifically, I want to check a list of values to see if they make an equation > a certain number. Then I want to continue using the values that fit the condition in the rest of my code. If they don't fit the condition then I don't want them used. Can anybody help me with this?

回答 (2 件)

Walter Roberson
Walter Roberson 2015 年 11 月 2 日
MATLAB does not have conditional for loops. MATLAB does however support code of the form
if some condition
for variable = range
some statement
end
end
and
for variable = range
if some condition
some statement
end
end
The first one checks the condition once and if it is true then runs the entire for loop to completion and otherwise does not run the for loop at all. The second one runs the for loop and for each iteration of the loop tests the condition and if the condition is true executes the statement.
If you wish to exit a for loop early then you can use "break". For example,
for variable = range
t = cos(variable);
if t < -0.88
break
end
some statement
end
This would exit the for loop the first time that cos(variable) < -0.88
  2 件のコメント
K Kee
K Kee 2015 年 11 月 2 日
this is very helpful. what would go in the "statement" position?
Walter Roberson
Walter Roberson 2015 年 11 月 2 日
What would go in the "statement" position is the using the values" part of "Then I want to continue using the values that fit the condition in the rest of my code"

サインインしてコメントする。


William Gaillard
William Gaillard 2019 年 3 月 7 日
編集済み: William Gaillard 2019 年 3 月 7 日
Couldn't you use a while loop to accomplish the same thing
  1 件のコメント
Walter Roberson
Walter Roberson 2019 年 3 月 9 日
When I re-read the question, it now looks to me as if the general form should be:
values_to_try = .... something appropriate
y = SomeFunction(values_to_try);
mask = y > a_certain_number;
selected_values = values_to_try(mask);
and then proceed to process selected_values

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by