OJ第四批——Problem B: 类重载实现矩阵加法
2015-07-02 17:49
302 查看
问题及代码:
Submit: 296 Solved: 144
[Submit][Status][Web
Board]
请勿一起提交
请用C++方式提交
int main()
{
Matrix a,b,c;
a.input();
b.input();
c=a+b;
c.display();
return 0;
}
运行结果:
Problem B: 类重载实现矩阵加法
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 296 Solved: 144
[Submit][Status][Web
Board]
Description
编写矩阵类Matrix,实现两个2x3矩阵相加。主函数已给定。Input
两个矩阵的元素值Output
两个矩阵相加的结果Sample Input
1 2 34 5 61 2 34 5 6
Sample Output
2 4 68 10 12
HINT
以下代码自动添加到程序末尾请勿一起提交
请用C++方式提交
int main()
{
Matrix a,b,c;
a.input();
b.input();
c=a+b;
c.display();
return 0;
}
#include <iostream> using namespace std; class Matrix { public: Matrix(); void input(); void display(); friend Matrix operator +(Matrix &,Matrix &); private: int mat[2][3]; }; Matrix::Matrix() { int i,j; for(i=0; i<2; i++) for(j=0; j<3; j++) mat[i][j]=0; } Matrix operator +(Matrix &m1,Matrix &m2) { Matrix m; int i,j; for(i=0; i<2; i++) for(j=0; j<3; j++) m.mat[i][j]=m1.mat[i][j]+m2.mat[i][j]; return m; } void Matrix::input() { int i,j; for(i=0; i<2; i++) for(j=0; j<3; j++) cin>>mat[i][j]; } void Matrix::display() { int i,j; for(i=0; i<2; ++i) { for(j=0; j<2; ++j) cout<<mat[i][j]<<" "; cout<<mat[i][2]; cout<<endl; } } int main() { Matrix a,b,c; a.input(); b.input(); c=a+b; c.display(); return 0; }
运行结果:
相关文章推荐
- 判断两条线段是否相交(三种算法)
- 也谈SQL Server 2008 处理隐式数据类型转换在执行计划中的增强
- openssl之BIO系列之23---MD类型的BIO
- openssl之BIO系列之22---Cipher类型的BIO
- hdu 4869
- C#实现进程管理的启动和停止实例
- 不损害他人就行
- iOS Provisioning Profile(Certificate)与Code Signing详解
- JSONObject
- openssl之BIO系列之21---Base64类型的BIO
- openssl之BIO系列之20---缓冲(buffer)类型BIO
- java java 内部类
- NYOJ 871 比赛
- redis 主从 集群配置
- 举例详解Linux系统下Pure-ftpd的使用方法
- openssl之BIO系列之19---Filter类型的NULL型BIO
- openssl之BIO系列之18---接受(accept)类型BIO
- iOS中使用blend改变图片颜色
- 为什么使用<!DOCTYPE HTML>
- CentOS7安装Docker,运行Nginx镜像、Centos镜像