diff options
Diffstat (limited to 'test/matrix.c')
-rw-r--r-- | test/matrix.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/test/matrix.c b/test/matrix.c new file mode 100644 index 0000000..d612734 --- /dev/null +++ b/test/matrix.c @@ -0,0 +1,23 @@ +#define N 4 + +void matrix_multiply(int first[][N], int second[][N], int multiply[][N]) { + int sum = 0; + for (int c = 0; c < N; c++) { + for (int d = 0; d < N; d++) { + for (int k = 0; k < N; k++) { + sum = sum + first[c][k]*second[k][d]; + } + multiply[c][d] = sum; + sum = 0; + } + } +} + +int main() { + int f[N][N] = {{1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}}; + int s[N][N] = {{5, 6, 7, 8}, {5, 6, 7, 8}, {5, 6, 7, 8}, {5, 6, 7, 8}}; + int m[N][N] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}}; + + matrix_multiply(f, s, m); + return m[1][1]; +} |