matlab中巧妙定义分段函数

  学习matlab有一段时间了,可是最近在一场考试中我发现还有很多简单的问题我都没有学会,比如怎么在matlab中定义分段函数。

  最简单的方法当然是使用if~else语句,但是由于很多时候我需要使用函数句柄,将函数视作一个参数,所以if~else定义分段函数并不是一个很好的方法,更好的方法是使用逻辑表达式:

【例】表示这个分段函数

【解】编写如下代码即可。将函数y分为三个部分,每个部分在自己的范围内时,就乘以1,不在自己范围内时,就乘以0。

x=0:0.01:3;
y=x.*(x<1)+x.^2.*(x>=1&x<2)+(x.^3-4).*(x>=2);
plot(x,y);

十分巧妙!

发布了29 篇原创文章 · 获赞 6 · 访问量 3416

猜你喜欢

转载自blog.csdn.net/qq_42138454/article/details/102247200