关于matlab定义分段函数的一个简单问题

我想定义一个分段函数y=exp(n) n>=0 y=0 n<0 我编写的函数M文件如下 function [ y ] = danbianzhishu( x ) if x>0 y=exp(x); else y=0; end 然后运行的时候我定义一个数组n=-3:3 x=dianbianzhishu(n) 得到的结果为0 这是为什么呢? x不是应该输出一组数吗 求高手解答啊 感激不尽

我觉得应该这样:
function
Y=danbianzhishu(X)
n=length(X);
Y=[];
for
i=1:n
if
X(i)>0
Y=[Y,exp(X(i))];
else
Y=[Y,0];
end
end
你写的程序,对于单个数值应该是正确的,输入参数如果是向量的话,是会错误的
温馨提示:答案为网友推荐,仅供参考
相似回答