# Program for addition of two matrices The below program adds two square matrices of size 4*4, we can change N for different dimension.

## C++

 `// C++ program for addition  ` `// of two matrices ` `#include ` `using` `namespace` `std; ` `#define N 4  ` ` `  `// This function adds A[][] and B[][], and stores  ` `// the result in C[][]  ` `void` `add(``int` `A[][N], ``int` `B[][N], ``int` `C[][N])  ` `{  ` `    ``int` `i, j;  ` `    ``for` `(i = 0; i < N; i++)  ` `        ``for` `(j = 0; j < N; j++)  ` `            ``C[i][j] = A[i][j] + B[i][j];  ` `}  ` ` `  `// Driver code ` `int` `main()  ` `{  ` `    ``int` `A[N][N] = { {1, 1, 1, 1},  ` `                    ``{2, 2, 2, 2},  ` `                    ``{3, 3, 3, 3},  ` `                    ``{4, 4, 4, 4}};  ` ` `  `    ``int` `B[N][N] = { {1, 1, 1, 1},  ` `                    ``{2, 2, 2, 2},  ` `                    ``{3, 3, 3, 3},  ` `                    ``{4, 4, 4, 4}};  ` ` `  `    ``int` `C[N][N]; ``// To store result  ` `    ``int` `i, j;  ` `    ``add(A, B, C);  ` ` `  `    ``cout << ``"Result matrix is "` `<< endl;  ` `    ``for` `(i = 0; i < N; i++)  ` `    ``{  ` `        ``for` `(j = 0; j < N; j++)  ` `        ``cout << C[i][j] << ``" "``;  ` `        ``cout << endl; ` `    ``}  ` ` `  `    ``return` `0;  ` `}  ` ` `  `// This code is contributed by rathbhupendra `

## C

 `#include ` `#define N 4 ` ` `  `// This function adds A[][] and B[][], and stores ` `// the result in C[][] ` `void` `add(``int` `A[][N], ``int` `B[][N], ``int` `C[][N]) ` `{ ` `    ``int` `i, j; ` `    ``for` `(i = 0; i < N; i++) ` `        ``for` `(j = 0; j < N; j++) ` `            ``C[i][j] = A[i][j] + B[i][j]; ` `} ` ` `  `int` `main() ` `{ ` `    ``int` `A[N][N] = { {1, 1, 1, 1}, ` `                    ``{2, 2, 2, 2}, ` `                    ``{3, 3, 3, 3}, ` `                    ``{4, 4, 4, 4}}; ` ` `  `    ``int` `B[N][N] = { {1, 1, 1, 1}, ` `                    ``{2, 2, 2, 2}, ` `                    ``{3, 3, 3, 3}, ` `                    ``{4, 4, 4, 4}}; ` ` `  `    ``int` `C[N][N]; ``// To store result ` `    ``int` `i, j; ` `    ``add(A, B, C); ` ` `  `    ``printf``(``"Result matrix is \n"``); ` `    ``for` `(i = 0; i < N; i++) ` `    ``{ ` `        ``for` `(j = 0; j < N; j++) ` `           ``printf``(``"%d "``, C[i][j]); ` `        ``printf``(``"\n"``); ` `    ``} ` ` `  `    ``return` `0; ` `} `

## Java

 `// Java program for addition  ` `// of two matrices ` ` `  `class` `GFG ` `{ ` `    ``static` `final` `int` `N = ``4``; ` `     `  `    ``// This function adds A[][] and B[][], and stores ` `    ``// the result in C[][] ` `    ``static` `void` `add(``int` `A[][], ``int` `B[][], ``int` `C[][]) ` `    ``{ ` `        ``int` `i, j; ` `        ``for` `(i = ``0``; i < N; i++) ` `            ``for` `(j = ``0``; j < N; j++) ` `                ``C[i][j] = A[i][j] + B[i][j]; ` `    ``} ` `     `  `    ``// Driver code ` `    ``public` `static` `void` `main (String[] args) ` `    ``{ ` `        ``int` `A[][] = { {``1``, ``1``, ``1``, ``1``}, ` `                        ``{``2``, ``2``, ``2``, ``2``}, ` `                        ``{``3``, ``3``, ``3``, ``3``}, ` `                        ``{``4``, ``4``, ``4``, ``4``}}; ` `     `  `        ``int` `B[][] = { {``1``, ``1``, ``1``, ``1``}, ` `                        ``{``2``, ``2``, ``2``, ``2``}, ` `                        ``{``3``, ``3``, ``3``, ``3``}, ` `                        ``{``4``, ``4``, ``4``, ``4``}}; ` `     `  `        ``// To store result ` `        ``int` `C[][] = ``new` `int``[N][N];  ` `        ``int` `i, j; ` `        ``add(A, B, C); ` `     `  `        ``System.out.print(``"Result matrix is \n"``); ` `        ``for` `(i = ``0``; i < N; i++) ` `        ``{ ` `            ``for` `(j = ``0``; j < N; j++) ` `            ``System.out.print(C[i][j] + ``" "``); ` `            ``System.out.print(``"\n"``); ` `        ``} ` `    ``} ` `} ` ` `  `// This code is contributed by Anant Agarwal. `

## Python3

 `# Python3 program for addition  ` `# of two matrices ` ` `  `N ``=` `4` `  `  `# This function adds A[][] ` `# and B[][], and stores ` `# the result in C[][] ` `def` `add(A,B,C): ` ` `  `    ``for` `i ``in` `range``(N): ` `        ``for` `j ``in` `range``(N): ` `            ``C[i][j] ``=` `A[i][j] ``+` `B[i][j] ` ` `  `# driver code ` `A ``=` `[ [``1``, ``1``, ``1``, ``1``], ` `    ``[``2``, ``2``, ``2``, ``2``], ` `    ``[``3``, ``3``, ``3``, ``3``], ` `    ``[``4``, ``4``, ``4``, ``4``]] ` `  `  `B``=` `[ [``1``, ``1``, ``1``, ``1``], ` `    ``[``2``, ``2``, ``2``, ``2``], ` `    ``[``3``, ``3``, ``3``, ``3``], ` `    ``[``4``, ``4``, ``4``, ``4``]] ` `  `  `C``=``A[:][:] ``# To store result ` ` `  `add(A, B, C) ` `  `  `print``(``"Result matrix is"``) ` `for` `i ``in` `range``(N): ` `    ``for` `j ``in` `range``(N): ` `        ``print``(C[i][j], ``" "``, end``=``'') ` `    ``print``() ` `     `  `# This code is contributed ` `# by Anant Agarwal. `

## C#

 `// C# program for addition  ` `// of two matrices ` `using` `System; ` ` `  `class` `GFG ` `{ ` `    ``static` `int` `N = 4; ` `     `  `    ``// This function adds A[][] and B[][], and stores ` `    ``// the result in C[][] ` `    ``static` `void` `add(``int``[,] A, ``int` `[,]B, ``int` `[,]C) ` `    ``{ ` `        ``int` `i, j; ` `        ``for` `(i = 0; i < N; i++) ` `            ``for` `(j = 0; j < N; j++) ` `                ``C[i,j] = A[i,j] + B[i,j]; ` `    ``} ` `     `  `    ``// Driver code ` `    ``public` `static` `void` `Main () ` `    ``{ ` `        ``int` `[,]A = { {1, 1, 1, 1}, ` `                        ``{2, 2, 2, 2}, ` `                        ``{3, 3, 3, 3}, ` `                        ``{4, 4, 4, 4}}; ` `     `  `        ``int` `[,]B = { {1, 1, 1, 1}, ` `                        ``{2, 2, 2, 2}, ` `                        ``{3, 3, 3, 3}, ` `                        ``{4, 4, 4, 4}}; ` `     `  `        ``// To store result ` `        ``int` `[,]C = ``new` `int``[N,N];  ` `        ``int` `i, j; ` `        ``add(A, B, C); ` `     `  `    ``Console.WriteLine(``"Result matrix is "``); ` `        ``for` `(i = 0; i < N; i++) ` `        ``{ ` `            ``for` `(j = 0; j < N; j++) ` `            ``Console.Write(C[i,j] + ``" "``); ` `            ``Console.WriteLine(); ` `        ``} ` `    ``} ` `} ` ` `  `// This code is contributed by vt_m. `

## PHP

 ` `

Output:

```Result matrix is
2 2 2 2
4 4 4 4
6 6 6 6
8 8 8 8```

The program can be extended for rectangular matrices. The following post can be useful for extending this program.

How to pass a 2D array as a parameter in C?

The time complexity of the above program is O(n2).

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.

My Personal Notes arrow_drop_up

Article Tags :
Practice Tags :

3

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.