Skip to main content

C Program to Multiply two Matrices

 C Program to Multiply two Matrices.

    In this example, we will calculate the product of the two matrices allowing the user to enter their required number of rows and columns. In matrix multiplication the number of columns, in the first matrix must be equal to the number of  rows in the second matrix, otherwise multiplication is not possible. The product will have the number of rows of the first matrix and the number of columns of the second matrix.

    Here in the output we have taken two matrices of order 2x3 and 3x2. The resulting matrix after calculating the product will be of the order 2x2.

PROGRAM

#include<stdio.h>
#include<conio.h>
void main()
{
    int row1,row2,column1,column2,i,j,k;
    int a[10][10],b[10][10],mul[10][10];
    printf("Enter the row size of the 1st Matrix : ");
    scanf("%d",&row1);
    printf("Enter the column size of the 1st Matrix : ");
    scanf("%d",&column1);
    printf("Enter the elements of the 1st Matrix : ");
    for(i=0;i<row1;i++)
    {
        for(j=0;j<column1;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    printf("Enter the row size of the 2nd Matrix : ");
    scanf("%d",&row2);
    printf("Enter the column size of the 2nd Matrix : ");
    scanf("%d",&column2);
    printf("Enter the elements of the 2nd Matrix : ");
    for(i=0;i<row2;i++)
    {
        for(j=0;j<column2;j++)
        {
            scanf("%d",&b[i][j]);
        }
    }
    if(column1!=row2)
    {
        printf("The multiplication isn't possible.\n");
    }
    else
    {
    for(i=0;i<row1;i++)
    {
        for(j=0;j<column2;j++)
            {
                mul[i][j]=0;
                for(k=0;k<row2;k++)
                {
                    mul[i][j]+=a[i][k]*b[k][j];
                }
            }
        }
        printf("Multiplication of the two matrices is : \n");
        for(i=0;i<row1;i++)
        {
            for(j=0;j<column2;j++)
            {
                printf("%d\t",mul[i][j]);
            }
            printf("\n");
        }
    }
    getch();
}


OUTPUT

 Enter the row size of the 1st Matrix : 2

 Enter the column size of the 1st Matrix : 3

 Enter the elements of the 1st Matrix : 0

 -1

 2

 4

 11 

 2

 Enter the row size of the 2nd Matrix : 3

 Enter the column size of the 2nd Matrix : 2

 Enter the elements of the 2nd Matrix : 3

 -1

 1

 2

 6

 1

 Multiplication of the two matrices is : 

 11      0

 35      20


NOTE: You Can Comment Your Code if you have solved differently and we will pin it in the comment section.  Let's Learn together. 


MOTTO: 

You Learn, I Learn together We Learn.


Comments

Popular posts from this blog

C Program to find the sum of the elements of a 2-D array.

 C Program to find the sum of the elements of a 2-D array.     In this example, we will find the sum of the elements of a 2-D array allowing the user to enter the row size and column size according to their requiremnts.      Here in the output we have entered a row  size 3 and column size 3. PROGRAM #include <stdio.h> #include <conio.h> void   main () {      int   a [ 50 ][ 50 ], r , c , i , j , sum = 0 ;      printf ( "Enter the row size and column size of the array :" );      scanf ( " %d%d " ,& r ,& c );      printf ( "Enter the elements of the array : " );      for ( i = 0 ; i < r ; i ++)     {          for ( j = 0 ; j < c ; j ++)       ...

C Program to find out the roots of a Quadratic Equation and also test for Real and Complex roots

 C Program to find out the roots of a Quadratic Equation  and also test for Real and Complex roots.       In this example, we will calculate the roots of the quadratic equation by testing for real and complex roots. We can test real and complex roots by checking these conditions : If b 2  −4 ac  < 0, then there are no real roots. If b 2  −4 ac  = 0, then both the roots are equal. If b 2  −4 ac  > 0, then roots are real and distinct.   PROGRAM TO FIND OUT THE ROOTS OF A QUADRATIC EQUATION. #include <stdio.h> #include <conio.h> #include <math.h> int   main () {      int   a , b , c , d ;      float   x , y ;      printf ( "Enter coefficient of x^2,x and constant : " );      scanf ( " %d   %d   %d " ,& a ,& b ,& c );      d = b * b ...

C Program to Check whether a given number is Perfect or Not

 C Program to Check whether a given number is Perfect or Not. In this exmaple we will learn to check a given number is a Perfect Number or not.  LOGIC OF PERFECT SQUARE NUMBER: At first we have declared variables i , num , sum=0 (value is initialized to zero).  Then we have inputted the number from the user and stored in num. After that we have to to add a loop i=1 till num/2 and to increment the iteration by 1. You all must be thinking why we have to run the loop till n um/2 because a number does not have any positive integer greater than the half of the number that is num/2 . Then we have to check whether the remainder of num%i is equal to zero or not. If it is equal then the value of i is a proper divisor of the number entered by the user and it is added to sum. Now we have to check if the sum of the proper divisors of the number equal to the original number. If it is equal then the number entered by the user is a perfect number otherwise it is not a perfect num...

C Program to Add Two Matrices Using Multi-dimensional Array.

C Program to Add Two Matrices Using Multi-dimensional Array.       In this example, we will add two matrices using multi-dimensional array. Two matrices can be added if they are equal means their order/dimensions must be same. Addition of matrices is performed by adding the corresponding elements of the two matrices.     Here in the Output we have  allowed the user to enter the row and column size of their matrices according to their requirements but they can enter the value of row size and column size less than 100. PROGRAM #include <stdio.h> #include <conio.h> int   main () {      int   row , column , i , j , a [ 100 ][ 100 ], b [ 100 ][ 100 ], c [ 100 ][ 100 ];      printf ( "Enter the row size of the matrices(max. value 100) : " );      scanf ( " %d " ,& row );      printf ( "Enter the co...

C program to read m x n matrix and calculate the Row sum and Column sum of the matrix.

 C program to read m x n matrix and calculate the Row sum and Column sum of the matrix.     In this example, we read a m x n matrix whose value would be entered by the user then the sum of row and column is calculated. Here in the example we have taken a matrix of order 3 x 2 whose row sum and column sum is displayed in the output screen. PROGRAM TO READ m x n MATRIX AND CALCULATE THE ROW SUM AND COLUMN SUM OF THE MATRIX: #include <stdio.h> #include <conio.h> void  main() {      int  i,j,m[100][100],row,column,rsum,csum=0;     printf( "Enter the row size of the matrix :" );     scanf( "%d" ,&row);     printf( "Enter the column size of the matrix :" );     scanf( "%d" ,&column);     printf( "Enter the Matrix : " );    ...