Why does my code does not work in the if loop

1 回表示 (過去 30 日間)
Low Kar Chuen
Low Kar Chuen 2017 年 3 月 22 日
コメント済み: Jan 2017 年 3 月 22 日
Hi there,
The question ask us to filter out the temperatures that is less than 5 deg C. the output for my T variable is 1 by 539 double matrix. By applying if loop, how do i make temperature that is less than 5 deg C to be 0? The following is my codes:
beta=15; T0=56.2; %intial temperature
t=1:0.0167:10;
T=T0-beta*t;
for n=1:length(T)
if T(n)<5
T=0
end
end
there is an error: Index exceeds matrix dimensions. Please help
  1 件のコメント
Jan
Jan 2017 年 3 月 22 日
There are no "if-loops". Only for and while create loops.

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

回答 (1 件)

ES
ES 2017 年 3 月 22 日
編集済み: ES 2017 年 3 月 22 日
Once you set T = 0 inside your if, you lose all the array you created by doing T=T0-beta*t;
so you should have done
if T(n)<5
T(n)=0
end
instead of if, you can also do a
T(T<5) = 0
what this does is, for all values of T<5, it sets it to 0.

カテゴリ

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