欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

重载矩阵加法运算 代码参考

程序员文章站 2022-04-15 23:39:15
1 #include 2 3 using namespace std; 4 5 class Matrix 6 { 7 private: 8 int a,b; 9 int arr[100][100]; 10 public: 11 Matrix() 12 { 13 for(int ......
 1 #include <iostream>
 2 
 3 using namespace std;
 4 
 5 class matrix
 6 {
 7     private:
 8         int a,b;
 9         int arr[100][100];
10     public:
11         matrix()
12         {
13             for(int i=0;i<100;i++)
14             {
15                 for(int j=0;j<100;j++)
16                 {
17                     arr[i][j]=0;
18                 }
19             }
20         }
21         void gethl(int a, int b){this->a=a;this->b=b;}
22         void getnum()
23         {
24             for(int i=0;i<a;i++)
25             {
26                 for(int j=0;j<b;j++)
27                 {
28                     cin>>arr[i][j];
29                 }
30             }
31         }
32         matrix operator+(matrix &c)
33         {
34             matrix temp;
35             for(int i=0;i<a;i++)
36             {
37                 for(int j=0;j<b;j++)
38                 {
39                     temp.arr[i][j]=this->arr[i][j]+c.arr[i][j];
40                 }
41             }
42             return temp;
43         }
44         void operator=(matrix c)
45         {
46               for(int i=0;i<a;i++)
47             {
48                 for(int j=0;j<b;j++)
49                 {
50                     arr[i][j]=c.arr[i][j];
51                 }
52             }
53         }
54         void show()
55         {
56             for(int i=0;i<a;i++)
57             {
58                 for(int j=0;j<b;j++)
59                 {
60                     if(j!=0)    cout<<" "<<arr[i][j];
61                     else    cout<<arr[i][j];
62                     if(j==b-1)  cout<<endl;
63                 }
64             }
65         }
66 };
67 
68 int main()
69 {
70     int a,b;
71     cin>>a>>b;
72     matrix one,two,three;
73     one.gethl(a,b);
74     two.gethl(a,b);
75     three.gethl(a,b);
76     one.getnum();
77     two.getnum();
78     three=one+two;
79     three.show();
80     return 0;
81 }