6-46.矩阵运算

根据main函数中矩阵对象的定义与使用,定义相关的矩阵类Array,并利用运算符重载的方法实现矩阵的加法与输入输出操作。(为简化问题,矩阵中元素为2位以内整数,要求矩阵按照行列的格式输出,每个元素占3位宽度)

代码实现:

#include <iostream>
#include <iomanip>
using namespace std;
class Array{
	private:
		int mat[2][3];
	public:
		Array operator +(Array b){
			Array rs;
			for(int i=0;i<2;i++){
				for(int j=0;j<3;j++)rs.mat[i][j] = mat[i][j]+b.mat[i][j];
			}
			return rs;
		} 
		friend istream& operator >>(istream& in,Array &a);
		friend ostream& operator <<(ostream& out,Array &a);
};
istream& operator >>(istream& in,Array &a){
	for(int i=0;i<2;i++){
		for(int j=0;j<3;j++)in>>a.mat[i][j];
	}
	
	return in;
}

ostream& operator <<(ostream& out,Array &a){
	for(int i=0;i<2;i++){
		for(int j=0;j<3;j++){
			cout<<setw(3)<<a.mat[i][j];
		}
		cout<<endl;
	}
	return out;
}

int  main()
{
        Array  arr1,arr2,arr3;
        cin>>arr1;
        cin>>arr2;  
        cout<<arr1<<endl;
        cout<<arr2<<endl;
        arr3=arr1+arr2;
        cout<<arr3;
        return  0;        
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值