Code:
#include <cstdio>
#include <conio.h>
//Lai gap chu em ma tran roi
void vao_mt(float *a,int N,int m);
void ra_mt(float *a,int N,int m);
void nhan_mt(float *a,float *b,float *c,int N,int m);
void cong_mt(float *a,float *c,float *c,int N,int m);
main ()
{
float a[20][20],b[20][20],c[20][20],d[20][20];
vao_mt(a,20,5);
vao_mt(b,20,5);
nhan_mt(a,b,c,20,5);
cong_mt(a,b,d,20,5);
printf("\nMA TRAN A:\n");
ra_mt(a,20,5);
printf("\nMA TRAN B:\n");
ra_mt(b,20,5);
printf("\nMA TRAN C:\n");
ra_mt(c,20,5);
printf("\nMA TRAN D:\n");
ra_mt(d,20,5);
}
//Bat dau nhuc dau o day
void vao_mt(float *a,int N,int m)
{
int i,j;
for(i=1;i<=m;i++)
for(j=1;j<=m;j++)
{
printf("\nNhap phan tu (%d,%d)=",i,j);
scanf("%f",a+i*N+j);
}
}
void ra_mt(float *a,int N,int m)
{
int i,j;
for(i=1;i<=m;i++)
{
printf("\n");
for(j=1;j<=m;j++)
printf("%.2f",*(a + i*N + j));
}
}
void cong_mt(float *a,float *b,float *c,int N,int m)
{
int i,j;
for(i=1;i<=m;i++)
for(j=1;j<=m;j++)
*(c+i*N+j)=*(a+i*N+j)+ *(b+i*N+m);
}
void nhan_mt(float *a,float *b,float*c,int N,int m)
{
int i,j,k;
for(i=1;i<=m;++i)
for(j=1;j<=m;++j)
{
*(c+i*N+j)=0;
for(k=1;k<=m;k++)
*(c+i*N+j)+=(*(a+i*N+k))*(*(b+k*N+j));
}
} //het nhuc dau o day