1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
program invgsyte;
uses
typ,
iom,
inv;
const
m1 = -10;
m2 = 10;
n1 = -5;
n2 = 10;
var
t, aantal, kk, ii, jj, k, j, n, term: ArbInt;
s: ArbFloat;
u, h, a: array[m1..m2, n1..n2] of ArbFloat;
begin
Write(' program results invgsyte');
case sizeof(ArbFloat) of
4: writeln('(single)');
6: writeln('(real)');
8: writeln('(double)');
end;
Read(aantal);
writeln;
writeln(' number of examples:', aantal: 3);
for t := 1 to aantal do
begin
writeln;
writeln(' example nr ', t: 3);
Read(k, j, n);
iomrem(input, a[k, j], n, n, n2 - n1 + 1);
writeln;
writeln('a =');
iomwrm(output, a[k, j], n, n, n2 - n1 + 1, numdig);
for ii := 1 to n do
for jj := 1 to n do
h[k - 1 + ii, j - 1 + jj] := a[k - 1 + ii, j - 1 + jj];
invgsy(n, n2 - n1 + 1, a[k, j], term);
writeln;
writeln('term=', term: 2);
if term = 1 then
begin
writeln('inv(a)=');
iomwrm(output, a[k, j], n, n, n2 - n1 + 1, numdig);
for ii := 1 to n do
for jj := 1 to n do
begin
s := 0;
for kk := 1 to n do
s := s + h[k - 1 + ii, j - 1 + kk] * a[k - 1 + kk, j - 1 + jj];
u[ii, jj] := s;
end; {ii,jj}
writeln;
writeln('a x inv(a) =');
iomwrm(output, u[1, 1], n, n, n2 - n1 + 1, numdig);
end; {term=1}
end; {t}
Close(input);
Close(output);
end.
program invgsyte;
uses
typ,
iom,
inv;
const
m1 = -10;
m2 = 10;
n1 = -5;
n2 = 10;
var
t, aantal, kk, ii, jj, k, j, n, term: ArbInt;
s: ArbFloat;
u, h, a: array[m1..m2, n1..n2] of ArbFloat;
begin
Write(' program results invgsyte');
case sizeof(ArbFloat) of
4: writeln('(single)');
6: writeln('(real)');
8: writeln('(double)');
end;
Read(aantal);
writeln;
writeln(' number of examples:', aantal: 3);
for t := 1 to aantal do
begin
writeln;
writeln(' example nr ', t: 3);
Read(k, j, n);
iomrem(input, a[k, j], n, n, n2 - n1 + 1);
writeln;
writeln('a =');
iomwrm(output, a[k, j], n, n, n2 - n1 + 1, numdig);
for ii := 1 to n do
for jj := 1 to n do
h[k - 1 + ii, j - 1 + jj] := a[k - 1 + ii, j - 1 + jj];
invgsy(n, n2 - n1 + 1, a[k, j], term);
writeln;
writeln('term=', term: 2);
if term = 1 then
begin
writeln('inv(a)=');
iomwrm(output, a[k, j], n, n, n2 - n1 + 1, numdig);
for ii := 1 to n do
for jj := 1 to n do
begin
s := 0;
for kk := 1 to n do
s := s + h[k - 1 + ii, j - 1 + kk] * a[k - 1 + kk, j - 1 + jj];
u[ii, jj] := s;
end; {ii,jj}
writeln;
writeln('a x inv(a) =');
iomwrm(output, u[1, 1], n, n, n2 - n1 + 1, numdig);
end; {term=1}
end; {t}
Close(input);
Close(output);
end.
|