1 / 2
文档名称:

矩阵求逆代码.doc

格式:doc   大小:15KB   页数:2页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

矩阵求逆代码.doc

上传人:Bonnacon 11/30/2022 文件大小:15 KB

下载得到文件列表

矩阵求逆代码.doc

相关文档

文档介绍

文档介绍:该【矩阵求逆代码 】是由【Bonnacon】上传分享,文档一共【2】页,该文档可以免费在线阅读,需要了解更多关于【矩阵求逆代码 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。矩阵求逆代码
矩阵求逆代码
感觉线性代数作业里一直少不了矩阵求逆,写个带输出算逆矩阵的步骤的
矩阵求逆程序,希望给即将或正在学线代的同学一点方便。代码写的不好,大
家见谅。
/*==**Copyright(C)BillHsu**2009-12-11**/#includeiostream#includevector#;typedefvectorfloats_line;//用来表示一行s_lineline;typedefvector
//用来表示一个矩阵s_matrixmatrix;s_matrixmat;s_lines_matrix;
intnSize;//矩阵维数intnSign;//标记行列式正负void
voidprintstep(s_matrix&_mat);intstep=0;outprint(s_matrix&_mat);
voidline_add(s_matrix&_mat,inta,intb,floatk=//第b行乘k加到
第a行{intsize=_mat[0].size();forinti=0;isize;
++i){_mat[a][i]+=_mat[b][i]*k;}//endfor}voidwork1(s_matrix&_mat)//
主计算函数{forinti=1;inSize;++i){if(fabs(_mat[i-1-){intmm;for(mm=i;mmnSize;++mm){if(fabs(_mat[mm-1-;}//endforline_add(_mat,i-1,mm-1);}//endifforintj=i;jnSize;++j){line_add(_mat,j,i-1,-_mat[j][i-1/_mat[i-1-
1]);}//endforjprintstep(_mat);}//endfori}void
work2(s_matrix&_mat)//第二部计算{forinti=nSize-2;i=0;--i){forintj=i;j=0;--j){line_add(_mat,j,i+1,-
_mat[j][i+1/_mat[i+1+1]);}printstep(_mat);}}void
makeunit(s_matrix&_mat)//单位化{();forinti=0;inSize;
++i){();forintj=0;jnSize*2;++j){float
tmp=_mat[i][j]/_mat[i][i];if(fabs(tmp))tmp=0;
(tmp);}(line);//cout
endl;}_mat=mat;}voidprintstep(s_matrix&_mat)//显示求的过程{cout"第
"++step"步"endl;forinti=0;inSize;++i){forintj=0;j2*nSize;
++j){if(fabs(_mat[i][j]))_mat[i][j]=0;cout_mat[i][j]"";if(j==nSize-1)cout"";}coutendl;}coutendl;}voidoutprint(s_matrix&_mat)//输出函数{forinti=0;inSize;++i){forintj=nSize;j2*nSize;++j){cout_mat[i][j]"";}coutendl;}}intmain(){step=0;();();cout"*矩阵求逆*"endl;cout"*BillHsu*"endl;cout""endlendl;cout"请输入矩阵维数(输入0退出):";cinnSize;if(nSize=0return0;forinti=0;inSize;++i){();cout"输入第"i+1"行:"endl;forintj=0;jnSize;++j){floattmp;cintmp;(tmp);//压入一个数到某行}forintj=0;jnSize;++j){if(i==j)();();}(line);//压入一行到矩阵}cout
work1(matrix);work2(matrix);makeunit(matrix);coutendl;
endl""endl"求逆结果:"endl;outprint(matrix);cout""endl;main();return0;}有图有真相:
输入矩阵数据
计算步骤
计算结果
发表于***@2009年12月11日23:01:00|||