diff options
author | rodri <rgl@antares-labs.eu> | 2020-02-22 09:56:09 +0000 |
---|---|---|
committer | rodri <rgl@antares-labs.eu> | 2020-02-22 09:56:09 +0000 |
commit | a39951d8f69209cfea2b7051832b851914e662ef (patch) | |
tree | e4cd1c32e5d6f531b523f6fda558cc3a5f603547 /transpose.c | |
download | brokentoys-a39951d8f69209cfea2b7051832b851914e662ef.tar.gz brokentoys-a39951d8f69209cfea2b7051832b851914e662ef.tar.bz2 brokentoys-a39951d8f69209cfea2b7051832b851914e662ef.zip |
now version controlled.
Diffstat (limited to 'transpose.c')
-rw-r--r-- | transpose.c | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/transpose.c b/transpose.c new file mode 100644 index 0000000..ee607f6 --- /dev/null +++ b/transpose.c @@ -0,0 +1,49 @@ +#include <u.h> +#include <libc.h> + +#define N 4 + +typedef double Matrix[N][N]; + +void +transpose(Matrix a) +{ + int i, j; + double tmp; + + for(i = 0; i < N; i++) + for(j = i; j < N; j++){ + tmp = a[i][j]; + a[i][j] = a[j][i]; + a[j][i] = tmp; + } +} + +void +printm(Matrix m) +{ + int i, j; + + for(i = 0; i < N; i++){ + for(j = 0; j < N; j++) + print("%g ", m[i][j]); + print("\n"); + } + print("\n"); +} + +void +main() +{ + Matrix m = { + 11, 12, 13, 14, + 21, 22, 23, 24, + 31, 32, 33, 34, + 41, 42, 43, 44, + }; + + printm(m); + transpose(m); + printm(m); + exits(0); +} |