Код
program rgr;
uses crt;
const
n=4;
r=4;
type
matrix= array[1..n,1..n] of integer;
var
k,i,j,s1,s2:integer;
a,b,c,d,m:matrix;
begin
clrscr;
writeln('matrix A:');
randomize;
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=random(r)+1;
write(a[i,j]:4);
end;
writeln;
end;
writeln;
writeln('matrix B:');
for i:=1 to n do
for j:=1 to n do
if i=1 then b[i,j]:=j
else begin
if j=1 then k:=n else k:=j-1;
b[i,j]:=-b[i-1,k];
end;
for i:=1 to n do
begin
for j:=1 to n do
write(b[i,j]:4);
writeln;
end;
writeln;
s1:=a[1,1];
for i:=1 to n do
for j:=1 to n do
if a[i,j]>s1 then s1:=a[i,j];
writeln('s1=',s1);
s2:=b[1,1];
for i:=1 to n do
for j:=1 to n do
if b[i,j]>s2 then s2:=b[i,j];
writeln('s2=',s2);
writeln;
if s1<s2
then
begin
for i:=1 to n do
for j:=1 to n do
begin
c[i,j]:=0;
for k:=1 to n do
c[i,j]:=c[i,j]+a[i,k]*b[k,j];
end;
for i:=1 to n do
for j:=1 to n do
begin
d[i,j]:=0;
for k:=1 to n do
d[i,j]:=d[i,j]+b[i,k]*a[k,j];
end;
for i:=1 to n do
for j:=1 to n do
m[i,j]:=c[i,j]-d[i,j];
writeln('s1<s2,matrix M:');
for i:=1 to n do
begin
for j:=1 to n do
write(m[i,j]:4);
writeln;
end;
end
else
begin
for i:=1 to n do
for j:=1 to n do
m[i,j]:=b[i,j]+2*a[i,j];
writeln('s1>s2,matrix M:');
for i:=1 to n do
begin
for j:=1 to n do
write(m[i,j]:4);
writeln;
end;
end;
end.