回 帖 发 新 帖 刷新版面

主题:matlab中的if用法

h(t)=1-t/Ts 0<t<=Ts;
    =1+t/Ts -Ts<t<=0;
    =0      其它
我用matlab写的时候
dt=0.001;
t=-2:dt:2;
Ts=1;
if ((t>0) && (t<=Ts))
    ht=1-t./Ts;
elseif ((t<=0) &&(t>=-Ts))
    ht=1+t./Ts;
else ht=0;
end
plot(t,ht);
运行时就出现错误了
Operands to the || and && operators must be convertible to logical scalar values
这个程序该怎么改啊?
需要把h(t)图形画出来

回复列表 (共4个回复)

沙发

如果把&&改成&就运行成功了,但是图形确实一条直线
这个是什么原因呢?

板凳

请看前面的一个帖子, 怎么画分段曲线。

3 楼

帖子在哪里啊,能否给个地址
谢谢了

4 楼

错在ht=0,应该为ht==0,用&&是没有错误的

我来回复

您尚未登录,请登录后再回复。点此登录或注册