欢迎来到天天文库
浏览记录
ID:40546357
大小:29.50 KB
页数:6页
时间:2019-08-04
《C#矩阵类代码(实现相加,转置,求逆功能)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、usingSystem;classMatrix{double[,]matrix;publicintrow=0,col=0;//inti=0,j=0;//intcount=1;//定义三个不同情况下的构造函数publicMatrix(){}publicMatrix(introw){matrix=newdouble[row,row];}publicMatrix(introw,intcol){this.row=row;this.col=col;matrix=newdouble[row,col];}//复制构造函数publicMatrix(Matrixm){introw=m.row;int
2、col=m.col;matrix=newdouble[row,col];for(inti=0;i3、ntp=0;p4、;}}}//得到matrixpublicdouble[,]Detail{get{returnmatrix;}set{matrix=value;}}//矩阵转置实现publicMatrixTranspose(){Matrixanother=newMatrix(row,col);for(inti=0;i5、!=rm.row){System.Exceptione=newException("相加的两个矩阵的行数不等");throwe;}//列出错if(lm.col!=rm.col){System.Exceptione=newException("相加的两个矩阵的列数不等");throwe;}Matrixanother=newMatrix(lm.row,lm.col);for(inti=0;i6、emp);}}returnanother;}//矩阵求逆实现publicstaticMatrixInverse(MatrixM){intm=M.row;intn=M.col;if(m!=n){ExceptionmyException=newException("求逆的矩阵不是方阵");throwmyException;}Matrixret=newMatrix(m,n);double[,]a0=M.Detail;double[,]a=(double[,])a0.Clone();double[,]b=ret.Detail;inti,j,row,k;doublemax,temp;//单位7、矩阵for(i=0;i
3、ntp=0;p4、;}}}//得到matrixpublicdouble[,]Detail{get{returnmatrix;}set{matrix=value;}}//矩阵转置实现publicMatrixTranspose(){Matrixanother=newMatrix(row,col);for(inti=0;i5、!=rm.row){System.Exceptione=newException("相加的两个矩阵的行数不等");throwe;}//列出错if(lm.col!=rm.col){System.Exceptione=newException("相加的两个矩阵的列数不等");throwe;}Matrixanother=newMatrix(lm.row,lm.col);for(inti=0;i6、emp);}}returnanother;}//矩阵求逆实现publicstaticMatrixInverse(MatrixM){intm=M.row;intn=M.col;if(m!=n){ExceptionmyException=newException("求逆的矩阵不是方阵");throwmyException;}Matrixret=newMatrix(m,n);double[,]a0=M.Detail;double[,]a=(double[,])a0.Clone();double[,]b=ret.Detail;inti,j,row,k;doublemax,temp;//单位7、矩阵for(i=0;i
4、;}}}//得到matrixpublicdouble[,]Detail{get{returnmatrix;}set{matrix=value;}}//矩阵转置实现publicMatrixTranspose(){Matrixanother=newMatrix(row,col);for(inti=0;i5、!=rm.row){System.Exceptione=newException("相加的两个矩阵的行数不等");throwe;}//列出错if(lm.col!=rm.col){System.Exceptione=newException("相加的两个矩阵的列数不等");throwe;}Matrixanother=newMatrix(lm.row,lm.col);for(inti=0;i6、emp);}}returnanother;}//矩阵求逆实现publicstaticMatrixInverse(MatrixM){intm=M.row;intn=M.col;if(m!=n){ExceptionmyException=newException("求逆的矩阵不是方阵");throwmyException;}Matrixret=newMatrix(m,n);double[,]a0=M.Detail;double[,]a=(double[,])a0.Clone();double[,]b=ret.Detail;inti,j,row,k;doublemax,temp;//单位7、矩阵for(i=0;i
5、!=rm.row){System.Exceptione=newException("相加的两个矩阵的行数不等");throwe;}//列出错if(lm.col!=rm.col){System.Exceptione=newException("相加的两个矩阵的列数不等");throwe;}Matrixanother=newMatrix(lm.row,lm.col);for(inti=0;i6、emp);}}returnanother;}//矩阵求逆实现publicstaticMatrixInverse(MatrixM){intm=M.row;intn=M.col;if(m!=n){ExceptionmyException=newException("求逆的矩阵不是方阵");throwmyException;}Matrixret=newMatrix(m,n);double[,]a0=M.Detail;double[,]a=(double[,])a0.Clone();double[,]b=ret.Detail;inti,j,row,k;doublemax,temp;//单位7、矩阵for(i=0;i
6、emp);}}returnanother;}//矩阵求逆实现publicstaticMatrixInverse(MatrixM){intm=M.row;intn=M.col;if(m!=n){ExceptionmyException=newException("求逆的矩阵不是方阵");throwmyException;}Matrixret=newMatrix(m,n);double[,]a0=M.Detail;double[,]a=(double[,])a0.Clone();double[,]b=ret.Detail;inti,j,row,k;doublemax,temp;//单位
7、矩阵for(i=0;i
此文档下载收益归作者所有