作业帮 > 综合 > 作业

Matlab程序画图问题

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/11 16:19:34
Matlab程序画图问题
写了一个程序,目的是显示一个分段的函数.在x属于0到10之间,y取1;x取10到20之间y=0.1x+2;x大于20小于80时y取0.程序如下(只有几行就不注释了,)
x=(0.1:0.1:80);
y=zeros(1,800);
 for i=1:1:800
     if i<=100  
         y(1,i)=1;
     elseif 100<i<=200
         y(1,i)=-0.1*0.1*i+2;
     elseif  201<i<=800 
         y(1,i)=0;
     end
 end
     plot(x,y)
但是出来的图形却是
     

也就是说在x的20到80部分起作用的仍然是第一个elseif语句,第二个elseif语句没有作用.请问这是什么情况?希望切实大神试验一下并作出正确的符合我想法的图形.
x=(0.1:0.1:80);y=zeros(1,800); for i=1:1:800     if i<=100           y(1,i)=1;     elseif 100<i & i<=200         y(1,i)=-0.1*0.1*i+2;     elseif  201<i & i<=800          y(1,i)=0;     end end     plot(x,y)