#include #define M 3 #define N 3 void printarr(int m, int n, int a[M][N]) { for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { printf("%2d ", a[i][j]); } printf("\n"); } } void intmulti(int m, int n, int a[M][N], int x) { for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { a[i][j] = a[i][j] * x; } } } void addmx(int m, int n, int A[M][N], int B[M][N], int C[M][N]) { for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { C[i][j] = A[i][j] + B[i][j]; } } } void mulmx(int m, int n, int A[M][N], int B[M][N], int C[M][N]) { for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { for (int p = 0; p < n; p++) C[i][j] += + A[i][p] * B[p][j]; } } } void transpone(int m, int n, int A[M][N], int At[M][N]) { for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { At[i][j] = A[j][i]; } } } int main() { /* int A[2][2] = {{3, -2}, {5, -4}}; int B[2][2] = {{3, 4}, {2, 5}}; int C[2][2] = {{0, 0}, {0, 0}}; mulmx(2, 2, A, B, C); printarr(2, 2, C); */ int A[M][N] = { {5, 8, -4}, {6, 9, -5}, {4, 7, -3} }; int B[M][N] = { {3, 2, 5}, {4, -1, 3}, {9, 6, 5} }; int C[M][N] = { {0, 0, 0}, {0, 0, 0}, {0, 0, 0} }; /*int D[M][N] = { {1, 1, 1}, {1, 1, 1}, {1, 1, 1}, };*/ printarr(M, N, A); puts(""); printarr(M, N, B); puts(""); mulmx(M, N, A, B, C); printarr(M, N, C); puts(""); //printarr(M, N, D); //puts(""); //addmx(M, N, A, B, C); //printarr(M, N, C); //intmulti(M, N, A, 2); //printarr(M, N, A); return 0; } /* int A[M][N] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; int B[M][N] = { {1, 1, 1}, {1, 1, 1}, {1, 1, 1} }; int C[M][N] = { {0, 0, 0}, {0, 0, 0}, {0, 0, 0} };*/