bluebee 发表于 2007-3-28 22:25

求助 帮忙修改下程序吧

我在别的程序中需要调用一个分段函数,可是我请教了好多人,还是没能实现这个小程序,还请各位能帮忙看下啦!多谢
y=0    0<x<1
y=1    1<x<2

jiu就这个函数,我的程序是这样的:
for x=0:0.001:2;
if x<=1
y=0
else
y=1
end
end
返回的数值好像是对的,可是我在别的程序中调用就发现它不正确,还有,我用plot(x,y)命令也画不出正确的波形来,
请各位尽力帮帮我吧,我这几天都快急死了!
静候佳音!:handshake

songzy41 发表于 2007-3-29 08:44

我想楼主是希望设置一个函数jiu,当有一个x输入时,有一个y输出,x和y的关系是:
y=0    0<x<=1
y=1    1<x<2
如果是这样的话,便不能把for x=0:0.001:2语句放在函数中,而jiu函数为
function y=jiu(x);
if x<=1
y=0;
else
y=1;
end
程序为
x=0:0.001:2;
N=length(x);
for k=1 : N
    y(k)=jiu(x(k));
end
plot(x,y)
这样就能得到x和y的关系图:

xjzuo 发表于 2007-3-29 09:54

不太相信LZ已经请教过很多人的说法,因为这只是一个最基本的阶跃函数而已.
除了楼上songzy41的方法, 若用逻辑语句,只需两条命令就可实现.

bluebee 发表于 2007-4-3 15:47

thank you

多谢了!其实我不是想要画那图形,我想在别的函数中调用该函数,并且这里我只是举个近似的例子。
问题我已经解决了,谢谢你们的建议!让你们见笑了:handshake
页: [1]
查看完整版本: 求助 帮忙修改下程序吧