C program to check whether a Matrix is Identity Matrix or not

Check whether a matrix is Identity matrix


Write a C program to check whether a Matrix is Identity Matrix or not. Here’s simple Program to check whether a matrix is unit matrix or not in C Programming Language.


What is Matrix ?


Matrix representation is a method used by a computer language to store matrices of more than one dimension in memory. C uses “Row Major”, which stores all the elements for a given row contiguously in memory.

Two-dimensional Arrays : :

The simplest form of multidimensional array is the two-dimensional array. A two-dimensional array is, in essence, a list of one-dimensional arrays. An m × n (read as m by n) order matrix is a set of numbers arranged in m rows and n columns.

To declare a two-dimensional integer array of size [x][y], you would write something as follows −

  • type arrayName [ x ][ y ];

Where type can be any valid C data type and arrayName will be a valid C identifier.


Below is the source code for C program to check whether a Matrix is Identity Matrix or not which is successfully compiled and run on Windows System to produce desired output as shown below :


SOURCE CODE : :


/*  C program to check whether a Matrix is Identity Matrix or not  */

#include <stdio.h>

int main()
{
    int A[10][10],B[10][10],i,j,m,n;
    int row, col, isIdentity;

    printf("Enter no. of rows :: ");
	scanf("%d", &m);
	printf("\nEnter no. of cols :: ");
	scanf("%d",&n);
	printf("\nEnter values to the matrix :: \n");
	for (i = 0; i < m; i++)
	{
            for (j = 0; j < n; j++)
            {
                 printf("\nEnter a[%d][%d] value :: ",i,j);
                 scanf("%d", &A[i][j]);
        }
    }

    /*
     * Checks whether it is Identity matrix or not
     */
    isIdentity = 1;
    for(row=0; row<m; row++)
    {
        for(col=0; col<n; col++)
        {

            if(row==col && A[row][col]!=1)
            {
                /* If elements of main diagonal is not equal to 1 */
                isIdentity = 0;
            }
            else if(row!=col && A[row][col]!=0)
            {
                /* If other elements than main diagonal is not equal to 0 */
                isIdentity = 0;
            }
        }
    }

    /*
     * If it is an Identity matrix
     */
    if(isIdentity==1)
    {
        printf("\nThe given matrix is an Identity Matrix.\n");

        /*
         * Prints the Identity matrix
         */
        for (i = 0; i < m; ++i)
	{
        for (j = 0; j < n; ++j)
        {
            printf("\t%d", A[i][j]);
        }
        printf("\n\n");
    }
    }
    else
    {
        printf("The given matrix is not Identity Matrix");
    }

    return 0;
}

Output : :


/*  C program to check whether a Matrix is Identity Matrix or not  */

Enter no. of rows :: 3

Enter no. of cols :: 3

Enter values to the matrix ::

Enter a[0][0] value :: 1

Enter a[0][1] value :: 0

Enter a[0][2] value :: 0

Enter a[1][0] value :: 0

Enter a[1][1] value :: 1

Enter a[1][2] value :: 0

Enter a[2][0] value :: 0

Enter a[2][1] value :: 0

Enter a[2][2] value :: 1

The given matrix is an Identity Matrix.
        1       0       0

        0       1       0

        0       0       1


Process returned 0

Above is the source code for C program to check whether a Matrix is Identity Matrix or not which is successfully compiled and run on Windows System.The Output of the program is shown above .

If you found any error or any queries related to the above program or any questions or reviews , you wanna to ask from us ,you may Contact Us through our contact Page or you can also comment below in the comment section.We will try our best to reach up to you in short interval.


Thanks for reading the post….

Leave a Reply