gauss.m
来自「雅可比迭代法解方程 高斯法解方程 查值法曲线拟和 2-9次方曲线拟和」· M 代码 · 共 36 行
M
36 行
a=[10 -1 -2;-1 10 -2;-1 -1 5];
b=[72 83 42];
%a=input('input array A:')
%b=input('input array b:')
n=length(b);
x=zeros(1,n);
N=10; e=1e-5; k=0;
while k<N
y=x;
s1=0;s2=0;s3=0;s4=0;
for j=2:1:n % x1
s1=s1+a(1,j)*x(j); % |
end % |
x(1)=(b(1)-s1)/a(1,1); % x1
for i=2:1:n-1 % xi
for j=1:1:i-1 % |
s2=s2+a(i,j)*x(j); % |
end % |
for j=i+1:1:n % |
s3=s3+a(i,j)*x(j); % |
end % |
x(i)=(b(i)-s2-s3)/a(i,i); % xi
end
for j=1:1:n-1 % xn
s4=s4+a(n,j)*x(j); % |
end % |
x(n)=(b(n)-s4)/a(n,n); % xn
if max(abs(x-y))<e
disp('done'),break %达到精度 输出done并显示结果和计算次数
else
k=k+1; %否则k加一返回继续
end
end
disp(k+1)
disp(x)
disp(y)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?