Code:
#include <stdio.h>
#include <conio.h>
void vao_mt(float*a,int n, int m);
void ra_mt(float*a,int n, int m);
void cong_mt(float*a,float*b,float*c,int n, int m);
void nhan_mt(float*a,float*b,float*d,int n, int m);
//************************************************************************************************************************************************************************************************************************************************************************
main()
{
float a[20][20],b[20][20],c[20][20],d[20][20];
int m,n;
vao_mt((float*)a,n,m);
ra_mt((float*)a,n,m);
cong_mt((float*)a,(float*)b,(float*)c,n,m);
nhan_mt((float*)a,(float*)b,(float*)d,n,m);
getch();
return 0;
}
//************************************************************************************************************************************************************************************************************************************************************************
void vao_mt(float*a,int n, int m)
{
int i,j;
for (i=1;i<=n;i++)
for (j=1;j<=m;j++)
{
printf("\nphan tu thu %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("%8.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<=n;i++)
for (j=1;j<=m;j++)
*(c+i*n+j)=*(a+i*n+j)+ *(b+i*n+j);
}
void nhan_mt(float*a,float*b,float*d,int n,int m)
{
int i,j;
for (i=1;i<=n;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));
}
}
Bookmarks