Program to check if two given matrices are identical

The below program checks if two square matrices of size 4*4 are identical or not.For any two matrix to be equal, number of rows and columns in both the matrix should be equal and the corresponding elements should also be equal.

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// C++ Program to check if two
// given matrices are identical
#include <bits/stdc++.h>
#define N 4
using namespace std;
  
// This function returns 1 if A[][] and B[][] are identical
// otherwise returns 0
int areSame(int A[][N], int B[][N])
{
    int i, j;
    for (i = 0; i < N; i++)
        for (j = 0; j < N; j++)
            if (A[i][j] != B[i][j])
                return 0;
    return 1;
}
  
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}};
  
    if (areSame(A, B))
        cout << "Matrices are identical";
    else
        cout << "Matrices are not identical";
    return 0;
}
//This code is contributed by Shivi_Aggarwal

chevron_right


C

filter_none

edit
close

play_arrow

link
brightness_4
code

// C Program to check if two 
// given matrices are identical
#include <stdio.h>
#define N 4
  
// This function returns 1 if A[][] and B[][] are identical
// otherwise returns 0
int areSame(int A[][N], int B[][N])
{
    int i, j;
    for (i = 0; i < N; i++)
        for (j = 0; j < N; j++)
            if (A[i][j] != B[i][j])
                return 0;
    return 1;
}
  
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}};
  
    if (areSame(A, B))
        printf("Matrices are identical");
    else
        printf("Matrices are not identical");
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java Program to check if two 
// given matrices are identical
  
class GFG
{
    static final int N = 4;
      
    // This function returns 1 if A[][] 
    // and B[][] are identical
    // otherwise returns 0
    static int areSame(int A[][], int B[][])
    {
        int i, j;
        for (i = 0; i < N; i++)
            for (j = 0; j < N; j++)
                if (A[i][j] != B[i][j])
                    return 0;
            return 1;
    }
      
    // 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}};
      
        if (areSame(A, B) == 1)
            System.out.print("Matrices are identical");
        else
            System.out.print("Matrices are not identical");
    }
}
  
// This code is contributed by Anant Agarwal.

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python3 Program to check if two
# given matrices are identical
  
N = 4
   
# This function returns 1
# if A[][] and B[][] are identical
# otherwise returns 0
def areSame(A,B):
      
    for i in range(N):
        for j in range(N):
            if (A[i][j] != B[i][j]):
                return 0
    return 1
  
# 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]]
                      
if (areSame(A, B)==1):
    print("Matrices are identical")
else:
    print("Matrices are not identical")
  
# This code is contributed
# by Anant Agarwal.

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# Program to check if two 
// given matrices are identical
using System;
  
class GFG {
      
    static int N = 4;
      
    // This function returns 1 if A[][] 
    // and B[][] are identical
    // otherwise returns 0
    static int areSame(int [,]A, int [,]B)
    {
        int i, j;
        for (i = 0; i < N; i++)
            for (j = 0; j < N; j++)
                if (A[i,j] != B[i,j])
                    return 0;
            return 1;
    }
      
    // 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}};
      
        if (areSame(A, B) == 1)
            Console.WriteLine("Matrices "
                      + "are identical");  
        else
            Console.WriteLine("Matrices "
                  + "are not identical");
    }
}
  
// This code is contributed by anuj_67.

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
// PHP Program to check if two
// given matrices are identical
  
// function returns 1 if A[][] 
// and B[][] are identical
// otherwise returns 0
function areSame($A, $B)
{
  
    for($i = 0; $i < 4; $i++)
        for ($j = 0; $j < 4; $j++)
            if ($A[$i][$j] != $B[$i][$j])
                return 0;
    return 1;
}
  
// 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)); 
  
    if (areSame($A, $B) == 1)
        echo "Matrices are identical";
    else
        echo "Matrices are not identical";
          
// This code is contributed by Anuj_67
?>

chevron_right


Output:

Matrices are identical

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).

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above



My Personal Notes arrow_drop_up

Improved By : vt_m, Shivi_Aggarwal



Article Tags :
Practice Tags :


2


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