‘壹’ matlab中用if else语句表示分段函数
你的X是一个向量,然后y在赋值的时候,有时候是-1这是一个点,有时候是一个向量cos(x)。
感觉你这种方法不对。应该每点对应。
x=-2*pi:pi/16:2*pi;
L
=
length(x);
for
i=1:L
if
(abs(x(i))>pi)
y(i)=-1;
else
y(i)
=
cos(x(i));
end
end
plot(x,y)
‘贰’ 请教各位怎样用matlab定义一个分段函数
1、绘制分段函数图像,需要知道分段函数的表达式。来绘制分段函数图像,该函数分为三段。
‘叁’ 如何用matlab编写分段函数
matlab对分段函数有非常简单的表示,对此例而言,语句如下:
x=-5:.1:5;
y=(3*x.^2+1).*(x>=1)+(2-x.^3).*(x<=-1);
对于楼主的程序,错误之处在于:
elseif-1<x<1
应该为
elseif-1<x&x<1
也就是说不等式串必须表达为单个的不等式的“且”关系。
没注意到1楼已经回答了。本回答没有重复1楼回答的意思。
‘肆’ MATLAB如何用if自定义分段函数
1、与建立M文件类似,在命令窗口中输入edit。
‘伍’ matlab中怎么定义分段函数
怎样用matlab来定义分段函数,首先要根据分段函数建立自定义函数,然后在命令窗口调用或其他程序里调用。
现举例说明:
1、建立自定义函数文件,piecewise1.m
function y=piecewise1(t)
%piecewise function 分段函数
n=length(t);
for i=1:n
if t(i)>=2
y(i)=1;
elseif t(i)>=-2 & t(i)<2
y(i)=t(i).^2;
else y(i)=-1;
end
end
2、在命令窗口中调用
>>t=0:0.5:10;
>>y=piecewise1(t)
3、运行结果
‘陆’ matlab编程关于分段函数
y2的第2个条件写错了,应该是3<=x<=6吧?
参考代码:
y1=@(x)(x.^2+3*x).*(x<=4)+(4*x+1).*(x>4&x<=9);
y2=@(x)(3*x.^2-9).*(x>-2&x<3)+(7*x+4).*(x>=3&x<=6);
y=@(x)y1(x)+y2(x);
x=-4:0.1:11;
plot(x,y1(x),x,y2(x),x,y(x),'--')
legend('y_1','y_2','y')
前三行代码分别定义了三个匿名函数y1、y2和y,可以随便调用求任何x的函数值:
>>y(3.5)
ans=
51.2500
>>y(5.6)
ans=
66.6000
‘柒’ matlab分段函数怎么编写
matlab分段函数编写的操作方法和步骤如下:
1、第一步,在计算机桌面上打开MATLAB软件,如下图所示。
‘捌’ MATLAB 如何实现分段函数
1、首先我们确定下所画的函数
sin(2*x) 0<=x<=pi
2*x pi<x<=5
0 其余的x
‘玖’ matlab 分段函数怎么编写程序
点击至文库查看全文>
原发布者:bitian216
f(x)的定义如下:
1、写一个函数文件f(x)实现该函数,要求参数x可以是向量;2、作出该函数的图形;3、求出f(x)的零点与最值。解:(1)、编写M函数文件functiony=f(x)n=length(x);ifx=0&x<10&x~=2&x~=3y=x.^2+5*x+6;elsey=x.^2-x-1;end(2)、把文件f.m放置在搜索路径上(3)、运行指令令x=5,则在命令窗口输入指令y=f(5)得到答案:y=56(2)图形x1=(-5):0.01:0;y1=x1.^2+x1-6;plot(x1,y1,'m-');holdonx2=0:0.01:10;y2=x2.^2-5*x2+6;plot(x2,y2,'r:');holdonx3=10:0.01:15;y3=x3.^2-x3-1;plot(x3,y3);x4=-4;y4=x4.^2-x4-1;plot(x4,y4,'p');holdonx5=2;y5=x5.^2-x5-1;plot(x5,y5,'b*');holdonx6=3;y6=x6.^2-x6-1;plot(x6,y6,'g*');title('函数f(x)的图形');text(-4,-20,'曲线f1(x)=x^2+x-6');text(2,40,'曲线f2(x)=x^2-5x+6');text(10,146,'曲线f3(x)=x^2-x-1');legend('f1(x)','f2(x)','f3(x)','x=-4','x=2','x=3');结果如图:
(2)f(x)的零点①当x>p1=[1,1,-6];>>x1=roots(p1);x1=-32由题意可知,x的取值范围在(-∞,0),所以x1=2舍去,即f(x)的零点之一为x1=-3.②当x>=0&x>p2=[1,-5,6];>>x2=roots(p2)x2=