Program for addition of two matrices

23 Jun, 2022
The below program adds two square matrices of size 4*4, we can change N for different dimensions. 
Implementation:
C++
C
Java
Python3
C#
PHP
Javascript
// C++ program for addition// of two matrices#include <bits/stdc++.h>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 codeint 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
#include <stdio.h>#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 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 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 codeA = [ [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# program for addition// of two matricesusing 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// This function adds A[][] and// B[][], and stores the result in C[][]function add(&$A, &$B, &$C){    $N = 4;    for ($i = 0; $i < $N; $i++)        for ($j = 0; $j < $N; $j++)            $C[$i][$j] = $A[$i][$j] +                         $B[$i][$j];} // Driver code$A = array(array(1, 1, 1, 1),           array(2, 2, 2, 2),           array(3, 3, 3, 3),           array(4, 4, 4, 4)); $B = array(array(1, 1, 1, 1),           array(2, 2, 2, 2),           array(3, 3, 3, 3),           array(4, 4, 4, 4)); $N = 4;add($A, $B, $C); echo "Result matrix is \n";for ($i = 0; $i < $N; $i++){    for ($j = 0; $j < $N; $j++)    {        echo $C[$i][$j];        echo " ";    }    echo "\n" ;} // This code is contributed// by Shivi_Aggarwal?>
<script> // Javascript program for addition// of two matrices let N = 4; // This function adds A[][] and B[][], and stores// the result in C[][]function add(A, B, C){    let 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    let A = [ [1, 1, 1, 1],                    [2, 2, 2, 2],                    [3, 3, 3, 3],                    [4, 4, 4, 4]];     let B = [ [1, 1, 1, 1],                    [2, 2, 2, 2],                    [3, 3, 3, 3],                    [4, 4, 4, 4]];     // To store result    let C = new Array(N);    for (let k = 0; k < N; k++)        C[k] = new Array(N);             let i, j;    add(A, B, C);     document.write("Result matrix is <br>");    for (i = 0; i < N; i++)    {        for (j = 0; j < N; j++)            document.write(C[i][j] + " ");        document.write("<br>");    } </script>
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?
Time complexity: O(n2). Auxiliary space: O(n2).
Shivi_Aggarwal
rathbhupendra
subhammahato348
rishavmahato348
hardikkoriintern
Matrix
School Programming
Matrix
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.