3.6—3.9
本节主要是熟悉matlab的
for/while end 循环语句
与
if (elseif…) else end 条件语句
循环语句:
高斯算法把帕斯卡矩阵转化为上三角形式:
A=pascal(8)
for j=1:7
for i=j+1:8
A(i,:)=A(i,:)-A(i,j)/A(j,j)*A(j,:)
end
end
迭代法求根:
A1=[0 3/7 -2/7;-4/9 0 1/9;-6/11 -3/11 0];
B1=[17/7 29/9 35/11]';
X0=[0 0 0]';
X1=[1 1 1]';
n=0;
while norm(X1-X0)>1e-5
X1=X0;
X0=A1*X1+B1;
n=n+1;
end
X0,n
条件语句:
二分法求根:
flag=1e-5;
left=0;
right=4;
x=(left+right)/2;
y=inline('x.^3-3*x.^2+5*x-7','x');
while abs(left-right)>=flag
if y(x)*y(left)<0
right=x;
elseif y(x)*y(right)<0
left=x;
end
x=(left+right)/2;
end
x