请教各位怎样用matlab定义一个分段函数

如题所述

matlab提供了了两种定义分段函数的方法:
常规方法:使用if...else...语句定义不同的分支
推荐方法:使用逻辑表达式将不同分支写成一个完整的函数表达式
下面进行举例说明:在matlab中定义如下分段函数
1、常规方法:
1
2
3
4
5
6
7
8
9
function
y
=
fun(x)
if(x<1)
y
=
x;
elseif(x<2)
y
=
x^2;
else
y
=
x^3;
end
return
2、推荐方法:
1
2
3
4
5
6
function
y
=
fun(x)
y
=
(x<1)*x
+
(x>=1&x<2)*x^2
+
(x>=2)*x^3;
return
%
当然,也乐意直接写成匿名函数的形式
f
=
@(x)
(x<1)*x
+
(x>=1&x<2)*x^2
+
(x>=2)*x^3;
温馨提示:答案为网友推荐,仅供参考
相似回答