查看完整版本 : 【求助】绝对新手问题,请别见笑。。
chunxin98
2007-06-17, 09:24
m文件
function y=fenduan(x)
if x > 0
y = 1;
elseif x == 0
y = 0;
else
y = -1;
end
控制台
x=-5:-1
.........
fenduan(x)
ans=
-1
怎么不是想像中的[-1 -1,-1, -1,-1]啊??
请教高手,,怎么处理的?
是把x看成1个矩阵,
还是1个1个求值?
怎么才能实现,1个1个求值?
xuanjiwei
2007-06-17, 11:39
n=0;
for x=-5:-1
if x > 0
n=n+1;y(n) = 1;
elseif x == 0
n=n+1;y(n) = 0;
else
n=n+1;y(n) = -1;
end
end
开个数组,这样应该就可以了
m文件
function y=fenduan(x)
if x > 0
y = 1;
elseif x == 0
y = 0;
else
y = -1;
end
控制台
x=-5:-1
.....
x = -5:-1;
y = sgn(x);
matlaber
2007-07-15, 15:59
版主没有对它存储,这是根本的问题
m文件
if x > 0
y = 1;
elseif x == 0
y = 0;
else
y = -1;
end
x给的是向量当然x即不等于0,又不大于0.故y = -1.
for x=-5:-1
fenduan(x)
end
x = -5:-1;
y = sgn(x);
y=sign(x)
y=[];n=1;
for x=-5:-1
y(n)=fenduan(x);n=n+1;end;y
m文件
function y=fenduan(x)
if x > 0
y = 1;
elseif x == 0
y = 0;
else
y = -1;
end
.....
function y=fenduan(x)
x=x(:);m=size(x,1);
for i=1:n
if x(i)>0
y(i)=;
elseif x(i)==0
y(i)=0;
else
y(i)=-1;
end
end
vBulletin® v3.8.3,版权所有 ©2000-2025,Jelsoft Enterprises Ltd.