📄 gauss_solve.m
字号:
function solution = Gauss_solve(A)
%高斯列主消元法解方程组
%输入参数:增广矩阵
%输出参数:方程组的解
[n,m] = size(A);
%消元
for k = 1:(n-1)
[a_rk,r] = max(abs(A(k:n,k)));
r = r + k - 1;
if a_rk==0
disp('方程错误,第r列元素全为0.');
disp(r);
return;
else
temp = A(r,:);
A(r,:) = A(k,:);
A(k,:) = temp;
for i = (k+1):n
scale(i-k) = A(i,k)/A(k,k);
for j = (k+1):(n+1)
A(i,j) = A(i,j) - scale(i-k) * A(k,j);
end
end
end
end
%回代
x(n) = A(n,n+1) / A(n,n);
for i = (n-1):-1:1
sum = 0;
for j = (i+1):n
sum = sum + A(i,j) * x(j);
end
x(i) = (A(i,n+1) - sum) / A(i,i);
end
solution = x;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -