#!/bin/sh echo -n $0: 'Matrix determinant... ' cat >test.bas <<'eof' width 120 dim a(7,7),b(7,7) mat read a mat print a; print data 58,71,67,36,35,19,60 data 50,71,71,56,45,20,52 data 64,40,84,50,51,43,69 data 31,28,41,54,31,18,33 data 45,23,46,38,50,43,50 data 41,10,28,17,33,41,46 data 66,72,71,38,40,27,69 mat b=inv(a) mat print b print det eof cat >test.ref <<'eof' 58 71 67 36 35 19 60 50 71 71 56 45 20 52 64 40 84 50 51 43 69 31 28 41 54 31 18 33 45 23 46 38 50 43 50 41 10 28 17 33 41 46 66 72 71 38 40 27 69 9.636025e+07 320206 -537449 2323650 -1.135486e+07 3.019632e+07 -9.650941e+07 4480 15 -25 108 -528 1404 -4487 -39436 -131 220 -951 4647 -12358 39497 273240 908 -1524 6589 -32198 85625 -273663 -1846174 -6135 10297 -44519 217549 -578534 1849032 1.315035e+07 43699 -73346 317110 -1549606 4120912 -1.31707e+07 -9.636079e+07 -320208 537452 -2323663 1.135493e+07 -3.019649e+07 9.650995e+07 1 eof sh ./test/runbas test.bas >test.data if cmp test.ref test.data then rm -f test.* echo passed else echo failed exit 1 fi