📄 lmz.m
字号:
a=1;
b=-1;
X=[-1 -0.5 0.5 1];
Y(4,1)=10;
while Y(4,1)>0.045
for J=1:4
A(J,1)=1;
A(J,2)=X(1,J);
A(J,3)=X(1,J)^2;
A(J,4)=(-1)^(J-1);
B(J,1)=exp(X(1,J));
end
Y=A\B;
for I=1:3
XL=X(1,I)-(exp(X(1,I))-Y(2,1)-2*Y(3,1)*X(1,I))/(exp(X(1,I))-2*Y(3,1));
if XL>=a&XL<X(1,1)
P=-2;
elseif XL>=X(1,1)&XL<X(1,2)
P=-1;
elseif XL>X(1,2)&XL<X(1,3)
P=0;
elseif XL>X(1,3)&XL<X(1,4)
P=1;
else p=2;
end
B1=exp(XL)-Y(1,1)-Y(2,1)*XL-Y(3,1)*XL^2;
switch P
case -2
A1=exp(X(1,1)-Y(1,1)-Y(2,1)*X(1,1)-Y(3,1)*X(1,1).^2);
if A1*B1>0
X(1,1)=XL;
else a=XL;
end
case -1
A1=exp(X(1,1)-Y(1,1)-Y(2,1)*X(1,1)-Y(3,1)*X(1,1)^2);
if A1*B1>0
X(1,1)=XL;
else X(1,2)=XL;
end
case 0
A1=exp(X(1,2)-Y(1,1)-Y(2,1)*X(1,2)-Y(3,1)*X(1,2)^2);
if A1*B1>0
X(1,2)=XL;
else X(1,3)=XL;
end
case 1
A1=exp(X(1,3)-Y(1,1)-Y(2,1)*X(1,3)-Y(3,1)*X(1,3)^2);
if A1*B1>0
X(1,3)=XL;
else X(1,4)=XL;
end
case 2
A1=exp(X(1,4)-Y(1,1)-Y(2,1)*X(1,4)-Y(3,1)*X(1,4)^2);
if A1*B1>0
X(1,4)=XL;
else b=XL;
end
end
end
end
disp(Y);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -