首页 > 编程知识 正文

已知逆矩阵求原矩阵例题,matlab消元法解线性方程组

时间:2023-05-06 17:47:20 阅读:43539 作者:2595

#包含

#包含

#包含

#define N 3

Void主() )

{

doublea [ n ] [ n ]={1,1,-1}、{ 2,1,0 }、{ 1,- 1,0 }; //线性方程的系数矩阵

双精度c [ n ] [ n ]; //求逆矩阵

双精度m [ n ]; //辅助乘数

双精度t; //保存换行临时变量

双精度时间=0;

双精度t; //最大列主元

int tap1=0,tap2=0; //最大列主元下标

for(intI=0; I

{

for(intj=0; Jj

{

if(I==j ) ) )。

{

c[i][j]=1;

}

else

{

c[i][j]=0;

}

}

}

//for(I=0; I

出局了

for(I=0; I

{

for(intj=0; Jj

{

出局了

}

出局了

}

出局了

for(ints=0; s

{

t=a[s][s]; //取初始值

for(intp=s; p

{

(if(Fabs(a[p][s] ) ) ) ) ) ) ) ) ) 652

{

t=a[p][s];

tap1=p;

tap2=s;

}

}

//cout

if(t==0) ) )。

{cout}

if(tap1!=tap2换行

{

for(intI=0; I

{

T=a[tap1][i];

a[tap1][i]=a[s][i];

a[s][i]=T;

T=c[tap1][i]; //逆矩阵换行

c[tap1][i]=c[s][i];

c[s][i]=T;

}

}

tap1=tap2=0; //设为零

/*cout

出局了

for(intj=0; Jj

{

a[s][j]=a[s][j]/t;

c[s][j]=c[s][j]/t;

}

for(intI=0; I

{

if(I!=s )

{

m[i]=a[i][s]/a[s][s];

for(intj=0; Jj

{

a[i][j]=a[i][j]-m[i]*a[s][j];

c[i][j]=c[i][j]-m[i]*c[s][j];

}

}

}

/*cout

}

出局了

for(I=0; I

{

for(intj=0; Jj

{

出局了

}

出局了

}

出局了

出局了

for(I=0; I

{

for(intj=0; Jj

{

出局了

}

出局了

}

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。