{
Дана действительная квадратная матрица порядка 2n.
Получить новую матрицу, переставляя ее блоки размера nXn:
}
uses
crt;
const
N = 3;
var
ar: array[1..2*N, 1..2*N] of real;
i, j, k: byte;
tmp: real;
begin
clrscr;
randomize;
writeln('Source array (', 2*N, 'x', 2*N, '):');
for i:=1 to 2*N do begin
for j:=1 to 2*N do begin
ar[i, j] := 10*i+j; {100*random();}
write(ar[i, j]:8:2);
end;
writeln;
end;
for i:=1 to N do begin
for j:=1 to 2*N do begin
tmp := ar[i, j];
if (j > N) then begin
k := j - N;
end else begin
k := N + j;
end;
ar[i, j] := ar[N+i, k];
ar[N+i, k] := tmp;
end;
end;
writeln;
writeln('Result array:');
for i:=1 to 2*N do begin
for j:=1 to 2*N do begin
write(ar[i, j]:8:2);
end;
writeln;
end;
writeln;
writeln('Done. Press any key...');
readkey;
end.
Если Вы уже зарегистрированы на Портале - войдите в систему, если Вы еще не регистрировались - пройдите простую процедуру регистрации.