admin管理员组文章数量:1794759
【MATLAB】06
目录
方法一:(一般方法)
方法二:(find)
方法三:(关系运算)
方法一:(一般方法)
按照正常的思路,表示分段函数是在脚本文件里用 if ..else..语句来完成,例如下列代码:
function [y]=ch3_1(x) n=length(x); for i=1:n if x(i)>1 y(i)=x(i).^2; elseif x(i)>-1 y(i)=1; else y(i)=3+2.*x; end end end >> ch3_1(1) ans = 1 >> ch3_1(1:3) ans = 1 4 9 方法二:(find)但是!!! 这样未免显得太low,而且代码过于繁琐,我们采用另一种方法,用find来简化代码:
function [y]=ch3_2(x) y=zeros(size(x)); %生成与x长度相同的零数组 k1=find(x>1);y(k1)=x(k1).^2; k2=find(x>-1);y(k2)=1; k3=find(x<=-1);y(k3)=3+2*x(k3); end >> ch3_2(-3:3) ans = -3 -1 1 1 1 1 1 方法三:(关系运算) >> x=-3:3 x = -3 -2 -1 0 1 2 3 >> (x>1).*x.^2 ans = 0 0 0 0 0 4 9 >> (x>-1&x<=1) ans = 0 0 0 1 1 0 0 >> (x<=-1).*(3+2*x) ans = -3 -1 1 0 0 0 0
本文标签: MATLAB
版权声明:本文标题:【MATLAB】06 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686493529a73709.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论