6-46.矩阵运算

2023-12-14 23:04:29

根据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;        
}

文章来源:https://blog.csdn.net/weixin_73121626/article/details/135005557
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。