matlab这个题怎么写

如题所述

该函数为分段函数,如用if结构来做,可以按下列格式来写。

x=-10:0.5:10;

for i=1:length(x)

x0=x(i);

if x0<-1

y0=-x0.^2-1;

y(i)=y0;

plot(x0,y0,'k.'),hold on

elseif x0>=1

y0=x0.^2-1;

y(i)=y0;

plot(x0,y0,'m.'),hold on

else

y0=0;

y(i)=y0;

plot(x0,y0,'b.'),hold on

end

end

plot(x,y,'c-')

xlabel('x'),ylabel('y')

运行结果



温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-03-31
x=-2:0.1:2;
y = (x.^2-1).*(x>=1)+0.*(x>-1&x<1)+(-x.^2-1).*(x<=-1);
plot(x,y,'r-p')

追问

If结构呀

追答x=-2:0.1:2;
y = zeros(size(x));
for i =1:1:numel(x)
if(x(i)<-1)
y(i) =-x(i)^2-1;
elseif(x(i)>-1&&x(i)<1)
y(i) = 0;
else
y(i) = x(i)^2-1;
end
plot(x,y,'r-p')

相似回答