標籤:

C++矩陣加法類

#include <iostream>using namespace std;class Matrix //定義Matrix類{public:Matrix(); //默認構造函數friend Matrix operator+(Matrix &,Matrix &); //重載運算符「+」void input(); //輸入數據函數void display(); //輸出數據函數private:int mat[2][3];};Matrix::Matrix() //定義構造函數{for(int i=0;i<2;i++)for(int j=0;j<3;j++)mat[i][j]=0;}Matrix operator+(Matrix &a,Matrix &b) //定義重載運算符「+」函數{Matrix c;for(int i=0;i<2;i++)for(int j=0;j<3;j++){c.mat[i][j]=a.mat[i][j]+b.mat[i][j];}return c;}void Matrix::input() //定義輸入數據函數{cout<<"input value of matrix:"<<endl;for(int i=0;i<2;i++)for(int j=0;j<3;j++)cin>>mat[i][j];}void Matrix::display() //定義輸出數據函數{for (int i=0;i<2;i++){for(int j=0;j<3;j++){cout<<mat[i][j]<<" ";}cout<<endl;}}int main(){Matrix a,b,c;a.input();b.input();cout<<endl<<"Matrix a:"<<endl;a.display();cout<<endl<<"Matrix b:"<<endl;b.display();c=a+b; //用重載運算符「+」實現兩個矩陣相加cout<<endl<<"Matrix c = Matrix a + Matrix b :"<<endl;c.display();return 0;}
推薦閱讀:

矩陣(一)
矩陣A與A的轉置相乘
【越飛越高講堂15】用LISP論矩陣
gal2mat:將gal權重文件轉成n-by-n矩陣

TAG:矩陣 |