欢迎来到天天文库
浏览记录
ID:53327398
大小:36.50 KB
页数:4页
时间:2020-04-03
《编程求解逆矩阵.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、本程序是运用矩阵的初等变换的知识来求解矩阵的逆矩阵的。1.理论基础:若存在矩阵P使得矩阵A有PA=E那么P=A’。所以如果我们将(A,E)化成了(E,P),那么,P就是我们要求的A’。2.由上面的分析可知,我们思路可分为以下3步:(1)申请一个新的矩阵,它是(A,E)(2)将A先对角化(3)再将A单位化E,这是A后面的部分就是A’了。3.编程实现#include#includefloatA1[10],A2[10][2*10],B[10][10];//原矩阵、加上单位矩阵后的矩阵
2、、所求的逆矩阵voidShangSanJiao(intn)//化成上三角{intk,i,j,l=0,temp;if(A2[0][0]==0){while(A2[l][0]==0&&l3、(l=k+1;l=0;i--){A1[i]=A2[i][i];}for(i=n-1;i>=0;i--){for(j=0;j<2*n;j++)A2[i][j]=A2[i][j]/A1[i];}}voidDanWei(intn)//将原矩阵化成单位矩阵{inti,j4、,l;floattemp;for(i=n-1;i>0;i--){for(j=i-1;j>=0;j--){temp=A2[j][i];for(l=0;l<2*n;l++)A2[j][l]=A2[j][l]-A2[i][l]*temp;}}}intmain(){intn;//矩阵的阶数scanf("%d",&n);if(n>10){printf("矩阵不再表示的范围内!");exit(-1);}inti,j;for(i=0;i5、}for(j=n;j<2*n;j++)A2[i][j]=0;}for(i=0,j=n;i6、f("");}printf("");*///显示上三角的矩阵DuiJiaoXian(n);//对角化1/*for(i=0;i7、");*///将所求矩阵移到B中for(i=0;i
3、(l=k+1;l=0;i--){A1[i]=A2[i][i];}for(i=n-1;i>=0;i--){for(j=0;j<2*n;j++)A2[i][j]=A2[i][j]/A1[i];}}voidDanWei(intn)//将原矩阵化成单位矩阵{inti,j
4、,l;floattemp;for(i=n-1;i>0;i--){for(j=i-1;j>=0;j--){temp=A2[j][i];for(l=0;l<2*n;l++)A2[j][l]=A2[j][l]-A2[i][l]*temp;}}}intmain(){intn;//矩阵的阶数scanf("%d",&n);if(n>10){printf("矩阵不再表示的范围内!");exit(-1);}inti,j;for(i=0;i5、}for(j=n;j<2*n;j++)A2[i][j]=0;}for(i=0,j=n;i6、f("");}printf("");*///显示上三角的矩阵DuiJiaoXian(n);//对角化1/*for(i=0;i7、");*///将所求矩阵移到B中for(i=0;i
5、}for(j=n;j<2*n;j++)A2[i][j]=0;}for(i=0,j=n;i6、f("");}printf("");*///显示上三角的矩阵DuiJiaoXian(n);//对角化1/*for(i=0;i7、");*///将所求矩阵移到B中for(i=0;i
6、f("");}printf("");*///显示上三角的矩阵DuiJiaoXian(n);//对角化1/*for(i=0;i7、");*///将所求矩阵移到B中for(i=0;i
7、");*///将所求矩阵移到B中for(i=0;i
此文档下载收益归作者所有