学过线代的同学应该就很好理解这个方法,就和线代中算矩阵一样的方法。先消去再回代,回代是从最后一个x开始解。
看下面这个例题:
用顺序高斯消去法求方程组可用熟悉的语言编程实现运行后查看运行结果。
function x =naguass(a,b,flag)
%顺序高斯消去法
if nargin<3%输入的参数小于3
flag=0;%显示中间过程
end
n=length(a);
x=zeros(n,1);
for k=2:n
for i=k:n
m=a(i,k-1)/a(k-1,k-1);
for j=1:n
a(i,j)=a(i,j)-m*a(k-1,j);
end
b(i)=b(i)-m*b(k-1);
end
if flag==0
a
b
end
end
x(n)=b(n,1)/a(n,n);
for k= (n-1):-1:1
x(k)=(b(k,1)-a(k,k+1:n)*x(k+1:n))/a(k,k);
end
end
结果截图: