高斯消去法求矩阵的逆。
a=input('请输入线性方程组的系数矩阵');
b=input('请输入线性方程组的右端列向量');
[Row,Col]=size(a);
if Row ~= Col
'线性方程组的系数矩阵非方阵,程序终止'
return
end
if det(a)==0
'线性方程组的系数矩阵行列式为0'
return
end
%Gauss消元法
for k=1:n-1
if a (k,k) ==0
'对角线元素a(%1d,%1d)为零,程序终止'
return
end
for i =k+1:n
l(i,k) = a(i,k)/a(k,k);
for j=k+1:n
a(i,j)=a(i,j)-l(i,j)*a(k,j);
end
b(i)=b(i)-l(i,k)*b(k);
end
end
%回代过程
if a(n,n)==0
'对角线元素a(%1d,%1d)为零,程序终止'
return
end
x(n)=b(n)/a(n,n);
'线性方程组解为'
x(n)
for i = n-1:-1:1
x(i)=b(i);
for j=k+1:n
x(i)= x(i)-a(i,j)*x(j);
end
x(i)=x(i)/a(i,i);
x(i)
end
因篇幅问题不能全部显示,请点此查看更多更全内容