Why does my code does not work in the if loop

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 个)

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.

类别

帮助中心File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

评论:

Jan
2017-3-22

Community Treasure Hunt

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

Start Hunting!

Translated by