- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
我的MatrixB
我的Matrix
B.第二版
这个小程序是增强版本。
1。 程序基本说明:在前一个版本基础上进一步实现矩阵与数的乘法,矩阵的乘法,加法(减法忘了实现了,不过可以用*-1再加来做,所
以。。。),矩阵的复制(操作符=),矩阵的旋转(transposition即绕主轴翻转180度)。
2。 程序思路:在矩阵的操作符重载后我返回矩阵的引用以便进行操作符的cascade,如M*2*4。
3。 主要函数介绍:
A. void mul(int source, int dest, double scalor);
void mul(int dest, double scalor);
内部方法第一个是把source行乘以scalor对应相加到dest行的对应项。第二个把dest行的每个元素乘以scalor.
B. Matrix operator *(Matrix otherMatrix); 矩阵的乘法,我为了省事,就在局部声明了一个临时矩阵以便记载结果,然后
再用复制的方法返回矩阵。
4。 不足之处:
A. 时间比较少,方法写的比较粗糙。
#include iostream
#include cmath
#include fstream
using namespace std;
const int MaxRow = 10;
const int MaxCol = 10;
const double LIMIT = 0.01;
class Matrix
{
private:
int rowNum;
int colNum;
double lst[MaxRow][MaxCol];
void mul(int source, int dest, double scalor);
void mul(int dest, double scalor);
public:
Matrix();
int row() const {return rowNum;}
int col() const {return colNum;}
void setRow(const int newRow) { rowNum = newRow;}
void setCol(const int newCol) { colNum = newCol;}
void display();
double items(int r, int c);
void initialize();
void readFromFile(const char* fileName);
void echelon(int r, bool reduced=true);
Matrix operator*(double i);
Matrix operator *(Matrix otherMatrix);
Matrix operator = (Matrix other);
Matrix operator+(Matrix other);
Matrix transposition();
};
int main()
{
Matrix M, N;
M.readFromFile(c:\\nick.txt);
N = M;
cout\nthis is M\n;
M.display();
M*2;
// M.echelon(0, false);
cout\nthis is M*2\n;
M.display();
cout\nthis is N\n;
N.display();
M*N;
cout\nthis is M*N\n;
M.display();
cout\nthis is rotating of M\n;
M.transposition();
M.display();
cout\n\nrow is:M.row();
cout\ncol is:M.col()endl;
return 0;
}
Matrix Matrix::transposition()
{
double hold;
int temp;
for (int r =0; r rowNum; r++)
{
for (int c=0; c r; c++)
{
hold = lst[r][c];
lst[r][c] = lst[c][r];
lst[c][r] = hold;
}
}
temp = rowNum;
rowNum = colNum;
colNum = temp;
return (*this);
}
Matrix Matrix::operator +(Matrix other)
{
if (rowNum!= o
您可能关注的文档
- JavaScript第9章 控制你的表单.ppt
- 022 TCPIP协议栈.ppt
- SimpleScalar整体工作简介.ppt
- 旧金山San Francisco Duty Report.ppt
- 操作系统ch4.8实例研究Linux虚存管理.ppt
- english-speaking countries intro母语为英语国家简介.ppt
- UNIT 4六年级I know this city.的课件.ppt
- 四季童话 课件ppt(s版语文四上).ppt
- 4-新人市场开拓沟通(10区曾庆明).ppt
- 北师大版四年级 四则运算(一).ppt
- 2025福建德化陶瓷产业创新发展研究院招聘笔试历年参考题库附带答案详解.docx
- 2025河南潢川县第三水厂操作工笔试笔试历年参考题库附带答案详解.docx
- 2025山东桓台县金海公有资产经营有限公司面向社会招聘考试有关笔试历年参考题库附带答案详解.docx
- 2025山东济南产业发展投资集团有限公司社会招聘10人笔试历年参考题库附带答案详解.docx
- 会昌县独好文化发展有限责任公司招聘笔试历年参考题库附带答案详解.docx
- 2025山东东明县县内部分企业高层次人才38人笔试历年参考题库附带答案详解.docx
- 2025浙江台州市国有资产投资集团有限公司招聘3人笔试历年参考题库附带答案详解.docx
- 央企中国绿发投资集团有限公司招聘笔试历年参考题库附带答案详解.docx
- 2025山东青岛国信发展(集团)校园招聘笔试历年参考题库附带答案详解.docx
- 2025上海新松江置业(集团)有限公司招聘7人笔试历年参考题库附带答案详解.docx
文档评论(0)