【发布时间】:2016-01-26 02:10:50
【问题描述】:
我在使用 Matlab 时遇到了这个问题(我也是 Matlab 新手)
我写了这个函数:
function pret = p_t(i)
if (i<=0)
pret = (1/4)*exp((1/2)*i);
elseif ((1 <= i))
if(i <=4)
pret = (1/9)*(i-1);
else
pret = 0;
end
else
pret = 0;
end
结束
所以如果我像这样运行它 p_t(1:4) 我得到 0; 0.1111; 0.2222; 0.3333 基本上每次它到达它应该为零的部分时,无论是否有一些“有效”值在 inteval 中,它都会给我全零 例如 p_t(-5:5) 给我全零
http://puu.sh/kYEyo/6bf0574d34.png这是我正在尝试编程的函数(“sonst”是德语的“否则”或“否则”)
问题可能出在哪里? 非常感谢!
【问题讨论】:
-
(只是为了好玩):你可以获得与内联函数相同的内容:
x =@(t) ( ~( (t < 1 & t >0) | ( t >4)) ) * ( (0.25*exp(0.5.*t))*(t<=0) + ( (1/9) *(t-1) *( t< 4 & t> 1 )))