Сторінка
5
For i:=1 to n do
For j:=1 to n do
read(B[i,j]);
n1:=2*n;
For i:=1 to n do
For j:=1 to n1 do
if j<=n then a[i,j]:=m[i,j]
else if j=n+i then a[i,j]:=1
else a[i,j]:=0;
For i:=1 to n do
begin k:=i;s:=a[i,i];
for j:=i+1 to n do
begin t:=a[j,i];
if abs(s)<abs(t) then begin s:=t;k:=j;end;end;
if abs(s)<e then begin
write('M- вироджена');Halt end;
For j:=i to n1 do
begin t:=a[k,j];a[k,j]:=a[i,j];a[i,j]:=t/s;end;
For k:=1 to n do
if k<>i then
For j:=n1 downto 1 do
a[k,j]:=a[k,j]-a[i,j]*a[k,i];end;
For i:=1 to n do
For j:=1 to n do
m[i,j]:=a[i,j+n];
For i:=1 to n do
For j:=1 to n do
For k:=1 to n do
C[i,j]:=C[i,j]+B[k,i]*M[j,k]; {Множення матриці на обернену}
For i:=1 to n do
For j:=1 to n do
writeln(C[i,j]:6:2); {Вивід результату}
End.
Результати:
n=3
1 2 3 1 2 3
M= 4 5 6 B= 4 5 6
7 8 9 7 8 9
1 0 0
C= 0 1 0
0 0 1
Початок
Ввід n,m
i=1,n
j=1,m
Ввід А[i,j]
i=1,n
j=1,m
Ввід B[i,j]