习题 10.4 有两个矩阵a和b,均为2行3列。求两个矩阵之和。重载运算符“+”,使之能用于矩阵相加。如:c=a+b。
两个 矩阵 运算符 用于 习题 重载 相加 10.4
2023-09-14 09:06:56 时间
C++程序设计(第三版) 谭浩强 习题10.4 个人设计
习题 10.4 有两个矩阵a和b,均为2行3列。求两个矩阵之和。重载运算符“+”,使之能用于矩阵相加。如:c=a+b。
代码块:
#include <iostream>
#include <iomanip>
using namespace std;
class Array
{
public:
Array();
friend Array operator+(Array a1, Array a2);
void input();
void display();
private:
int arr[2][3];
};
Array::Array()
{
int i, j;
for (i=0; i<2; i++)
for (j=0; j<3;j++)
arr[i][j]=0;
}
Array operator+(Array a1, Array a2)
{
Array a3;
int i, j;
for (i=0; i<2; i++)
for (j=0; j<3; j++)
a3.arr[i][j]=a1.arr[i][j]+a2.arr[i][j];
return a3;
}
void Array::input()
{
cout<<"Please enter array:";
for (int i=0; i<2; i++)
for (int j=0; j<3; j++)
cin>>arr[i][j];
}
void Array::display()
{
int i, j;
for (i=0; i<2; cout<<endl, i++)
for (j=0; j<3; cout<<setw(4)<<arr[i][j]<<' ', j++);
}
int main()
{
Array a, b, c;
a.input();
b.input();
c=a+b;
c.display();
system("pause");
return 0;
}
相关文章
- 7-1 正整数A+B > 题的目标很简单,就是求两个正整数A和B的和,其中A和B都在区间[1,1000]。稍微有点麻烦的是,输入并不保证是两个正整数。「建议收藏」
- 使用maven打包jar_两个java文件打包成jar
- 检查linux网络状态的两个脚本详解程序员
- Linux下安装配置两个JDK的经验分享(linux两个jdk)
- Mysql中计算两个值的差值(mysql 两个值相减)
- 计算Oracle中两个时间差值的方法(oracle 两个时间差)
- 如何在Oracle中一次性修改两个表的数据(oracle修改两表语句)
- Oracle中体验双重递归精彩查询(oracle两个递归查询)
- 用Oracle实现两个表之间的相加运算(oracle 两个表相加)
- Oracle两个竖线的故事(oracle+两个竖线)
- 值Oracle求两个日期最大值的解决方案(oracle两个日期取大)
- Oracle中文件之间的差异探究(oracle两个文件区别)
- Oracle数据库两个字段的分组研究(oracle两个字段分组)
- 两个开源的Php输出Excel文件类