Problem with if statement

1 回表示 (過去 30 日間)
Kyle Donk
Kyle Donk 2020 年 1 月 14 日
回答済み: Steven Lord 2020 年 1 月 14 日
I am trying to create code that says that if any number in an array of 100 numbers (y) is less than two, then count increases by 1. (y is defined earlier in the code)
Can someone tell me what my if statement is saying? I know that's where I am messing up.
PLEASE DO NOT GIVE ME THE COMPLETE ANSWER! I JUST WANT TO KNOW WHAT MY IF STATEMENT CURRENTLY SAYS!
%Display only the number of y-values less than the number 2.0.
count=0;
N=length(y);
for i=1:N
if y<2
count=count+1
end
disp(count)
end

採用された回答

Steven Lord
Steven Lord 2020 年 1 月 14 日
If you want to check if element i of y is less than 2, that's not what your if statement says. It is checking all the elements of y at each iteration of your for loop. If you look at the documentation for the if keyword it describes how if handles the case where the thing you're testing is not a scalar. That explains why count likely remains at 0 through your entire for loop.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by