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 convert a given temperature value from Fahrenheit to Centigrade and vice versa?

  Write a C program to convert a given temperature value from Fahrenheit to Centigrade and vice versa?          In this example we will learn how to convert a given temperature in Fahrenheit to Centigrade and to convert given  temperature value from Centigrade to Fahrenheit depending on the choice of the user.                To solve this program we should have basic knowledge in c and most importantly a clear concept on : Switch Statement             And we must know the formula of conversion from Fahrenheit to Centigrade(Celsius) and Centigrade(Celsius) to Fahrenheit. Fahrenheit To Centigrade Centigrade To Fahrenheit PROGRAM       #include <stdio.h> #include <conio.h> void   main () {      float   f , c ;      int   ch ;      printf ( "CONVERT" );      printf ( " \n 1. Fahrenheit to Celsius." );      printf ( " \n 2. Celsius to Fahrenheit \n " );      printf ( " \n Enter your choice (1|2):" );      sca

C++ program to define a class circle to represent circles. Add a data member radius to store the radius of a circle. Write member functions area() and perimeter() to compute the area and perimeter of a circle.

  C++ program to define a class circle to represent circles. Add a data member radius to store the radius of a   circle. Write member functions area() and perimeter() to compute the area and perimeter of a circle.     To define a Circle class in C++, we start by declaring the class with the class keyword, followed by the name of the class. In this case, we'll call it Circle . We'll then define a private data member to store the radius of the circle. Here's the code to do that:    class Circle {      private:      double radius;    };          Next, we need to define public member functions that can set and get the value of the radius, as well as calculate the area and perimeter of the circle. Here's the full code for the Circle class: class Circle { private: double radius; public: void setRadius(double r) { radius = r; } double getRadius() { return radius; } double area() { return 3.14159 * r