Ad

Saturday, July 13, 2013

Multiplication of Two Matrices (matrix) by C Program

 Now multiplication of two matrices(matrix) is so easy if use a C program. It is very easy to write and understand. In this we use 2d array. To understand this code you must have a basic knowledge about 2 dimensional array. So, let's try...........

 #include<stdio.h>

int main()

{

  int a[5][5],b[5][5],c[5][5],i,j,k,sum=0,m,n,o,p;


  printf("\nEnter the row and column of first matrix: ");

  scanf("%d %d",&m,&n);


  printf("\nEnter the row and column of second matrix: ");

  scanf("%d %d",&o,&p);


  if(n!=o)

  {

      printf("Matrix mutiplication is not possible: ");

      printf("\nColumn of first matrix must be same as row of second matrix: ");

  }

  else

  {

      printf("\nEnter the First matrix-> ");

      for(i=0;i<m;i++)

      for(j=0;j<n;j++)

           scanf("%d",&a[i][j]);

      printf("\nEnter the Second matrix-> ");

      for(i=0;i<o;i++)

      for(j=0;j<p;j++)

           scanf("%d",&b[i][j]);

      printf("\nThe First matrix is\n");

      for(i=0;i<m;i++){

      printf("\n");

      for(j=0;j<n;j++){

           printf("%d\t",a[i][j]);

      }

      }

      printf("\nThe Second matrix is\n");

      for(i=0;i<o;i++){

      printf("\n");

      for(j=0;j<p;j++){

           printf("%d\t",b[i][j]);

      }

      }

      for(i=0;i<m;i++)

      for(j=0;j<p;j++)

           c[i][j]=0;

      for(i=0;i<m;i++){ //row of first matrix

      for(j=0;j<p;j++){  //column of second matrix

           sum=0;

           for(k=0;k<n;k++)

               sum=sum+a[i][k]*b[k][j];

           c[i][j]=sum;

      }

      }

  }

  printf("\nThe multiplication of two matrix is\n");

  for(i=0;i<m;i++){

      printf("\n");

      for(j=0;j<p;j++){

           printf("%d\t",c[i][j]);

      }

  }

  return 0;

}

0 comments:

Post a Comment