MATLAB和功能

izz*_*zat -1 matlab

我想y(t)从等式中计算函数:

y(t) = -3t^2+5, t>=0
y(t) = 3t^2+5, t<0

for -9 <= t <= with the step-size 0.5
Run Code Online (Sandbox Code Playgroud)

我想用MATLAB绘制它.我以两种方式处理这个问题:

第一

t=0:0.5:9
y=-3*t^2+5

t1=-0.00000000001:0.5:-9
y1=3*t^2+5

plot(t,y,t1,y1)
Run Code Online (Sandbox Code Playgroud)

其次是使用循环

t=-9:0.5:9

if(t>=0)
    y=-3*(t.^2)+5
else
    y=3.*(t.^2)+5
end

plot(t,y)
Run Code Online (Sandbox Code Playgroud)

我的问题是上面的两种方式似乎没有给出相同的答案......哪一个是正确的答案?

kwa*_*ord 6

您可以使用该sign函数更轻松地执行此特定示例:

t = -9:0.5:9;
y = -sign(t)*3.*t.^2 + 5;
plot(t,y);
Run Code Online (Sandbox Code Playgroud)