matlab中用高斯消元法接方程组程序

学习 时间:2026-04-01 08:36:22 阅读:2141
matlab中用高斯消元法接方程组程序方程组如下:10 -1 2 0】 6-1 11 -1 3】 25 2 -1 10 -1】 -110 3 -1 8】 15左边的是矩阵A,右边的是b

最佳回答

甜蜜的月饼

愉快的乌冬面

2026-04-01 08:36:22

function [X]=gaussian(A,B,n)C=[A B];for i=2:n [r,c]=max(abs(C(i-1:n,i-1))); VEC=C(i-1,:);C(i-1,:)=C(c+i-2,:);C(c+i-2,:)=VEC;if C(i-1,i-1)==0 returnendfor k=(i-1):(n-1)C(k+1,:)=C(i-1,:)*-C(k+1,i-1)/C(i-1,i-1)+C(k+1,:);endendD=C;B2=C(:,n+1);D(:,n+1)=[];X=zeros(1,n);for i=1:nX(n+1-i)=(B2(n+1-i)-D(n+1-i,:)*X')/C(n+1-i,n+1-i);end运行:>>A=[10,-1,2,0;-1,11,-1,3;2,-1,10,-1;0,3,-1,8];>>B=[6,25,-11,15]';>>gaussian(A,B,4)ans =1。0000 2。0000 -1。0000 1。0000

最新回答共有2条回答

  • 鲤鱼季节
    回复
    2026-04-01 08:36:22

    function [X]=gaussian(A,B,n)C=[A B];for i=2:n [r,c]=max(abs(C(i-1:n,i-1))); VEC=C(i-1,:);C(i-1,:)=C(c+i-2,:);C(c+i-2,:)=VEC;if C(i-1,i-1)==0 returnendfor k=(i-1):(n-1)C(k+1,:)=C(i-1,:)*-C(k+1,i-1)/C(i-1,i-1)+C(k+1,:);endendD=C;B2=C(:,n+1);D(:,n+1)=[];X=zeros(1,n);for i=1:nX(n+1-i)=(B2(n+1-i)-D(n+1-i,:)*X')/C(n+1-i,n+1-i);end运行:>>A=[10,-1,2,0;-1,11,-1,3;2,-1,10,-1;0,3,-1,8];>>B=[6,25,-11,15]';>>gaussian(A,B,4)ans =1。0000 2。0000 -1。0000 1。0000

上一篇 中国是黑夜,美国是什么?

下一篇 怎么画好.物理的串联和并联的电路图?