Matlab初学者小问题

2025-04-14 08:28:19
推荐回答(2个)
回答1:

对于分段函数,最简单的写法通常是这样的:

>> x=0:1:8;
>> y=sqrt(x).*(x>4)+(2*x-6).*(x<=4)
y =
   -6.0000   -4.0000   -2.0000         0    2.0000    2.2361    2.4495    2.6458    2.8284

就是说,把各段的函数表达式乘以逻辑数组,然后加到一起。这样的意思是,对于满足分段条件的那些x(n),对应的逻辑表达式的值为1,所以该项有效,否则逻辑值为0,该项就不会计算在内。

回答2:

>> x=0:8;
>> y=zeros(1,length(x));
>> y(x<=4) = 2*x(x<=4)-6;
>> y(x>4) = sqrt(x(x>4));
>> y
y =
   -6.0000   -4.0000   -2.0000         0    2.0000    2.2361    2.4495    2.6458    2.8284