Nhân 2 ma trận là một trong những bài toán thường gặp trong các bài học của môn ngôn ngữ lập trình C, để giải quyết được bài toán này các bạn nên tham khảo và tìm hiểu thế nào là nhân 2 ma trận trong toán học cũng như trong lập trình.
Trong toán học, phép nhân ma trận là phép toán nhị phân tạo ra ma trận từ hai ma trận. Để nhân ma trận, số lượng cột trong ma trận thứ nhất phải bằng số lượng hàng trong ma trận thứ hai. Ma trận kết quả, được gọi là tích ma trận, có số lượng hàng của ma trận đầu tiên và số cột của ma trận thứ hai.
Chương trình C nhân 2 ma trận
#include<stdio.h>
int main()
{
int a[5][5],b[5][5],c[5][5],m,n,p,q,i,j,k;
printf("Enter rows and columns of first matrix:");
scanf("%d%d",&m,&n);
printf("Enter rows and columns of second matrix:");
scanf("%d%d",&p,&q);
if(n==p)
{
printf("\nEnter first matrix:\n");
for(i=0;i<m;++i)
for(j=0;j<n;++j)
scanf("%d",&a[i][j]);
printf("\nEnter second matrix:\n");
for(i=0;i<p;++i)
for(j=0;j<q;++j)
scanf("%d",&b[i][j]);
printf("\nThe new matrix is:\n");
for(i=0;i<m;++i)
{
for(j=0;j<q;++j)
{
c[i][j]=0;
for(k=0;k<n;++k)
c[i][j]=c[i][j]+(a[i][k]*b[k][j]);
printf("%d ",c[i][j]);
}
printf("\n");
}
}
else
printf("\nSorry!!!! Matrix multiplication can't be done");
return 0;
}
Kết quả:
Post a Comment
Post a Comment