#include void nhap(int MTA[][10], int MTB[][10], int m, int n1, int n2, int p); void nhan(int MTA[][10], int MTB[][10], int MTCResult[][10], int m, int n1, int n2, int p); void in(int MTC[][10], int m, int p); int main() { int MTA[10][10], MTB[10][10], MTC[10][10], m, n1, n2, p, i, j, k; printf("Nhap co cua ma tran A: "); scanf("%d %d", &m, &n1); printf("Nhap co cua ma tran B: "); scanf("%d %d", &n2, &p); while (n1 != n2) { printf("So hang MTB phai bang so cot MTA\n"); printf("Nhap co cua ma tran A: "); scanf("%d%d", &m, &n1); printf("Nhap co cua ma tran B: "); scanf("%d%d", &n2, &p); } // Hàm nhập dữ liệu nhapxuatab(MTA, MTB, m, n1, n2, p); // Hàm nhân ma trận nhan(MTA, MTB, MTC, m, n1, n2, p); // Hàm in ma trận kq(MTC, m, p); return 0; } void nhapxuatab(int MTA[][10], int MTB[][10], int m, int n1, int n2, int p) { int i, j; printf("\nNhap phan tu ma tran A:\n"); for(i = 0; i < m; ++i) { for(j = 0; j < n1; ++j) { printf("Phan tu a%d%d: ", i + 1, j + 1); scanf("%d", &MTA[i][j]); } } printf("\nNhap phan tu ma tran B:\n"); for(i = 0; i < n2; ++i) { for(j = 0; j < p; ++j) { printf("Phan tu b%d%d: ", i + 1, j + 1); scanf("%d", &MTB[i][j]); } } printf("\nMa tran A:\n"); for (i = 0; i < m; i++) { for (j = 0; j < n1; j++) { printf("%d\t", MTA[i][j]); } printf("\n"); } printf("\nMa tran B:\n"); for (i = 0; i < n2; i++) { for (j = 0; j < p; j++) { printf("%d\t", MTB[i][j]); } printf("\n"); } } void nhan(int MTA[][10], int MTB[][10], int MTC[][10], int m, int n1, int n2, int p) { int i, j, k; // Tạo ma trận C for(i = 0; i < m; ++i) { for(j = 0; j < p; ++j) { MTC[i][j] = 0; } } // Nhân ma trận A và B for(i = 0; i < m; ++i) { for(j = 0; j < p; ++j) { for(k=0; k