матрица подскажите
Добавлено: 05 июн 2007, 21:26
Дана действительная квадратная матрица порядка 2n. Получить новую матриц, переставляя её блоки размера n*n по диагонали слева на право. пример
1-2 должно получиться 4-2
3-4 3-1
у меня в программе меняет все блоки . как исправить ошибку.
Program MATRISA;
const n=4;
var
i,j : integer;
A, B : ARRAY [1..2*n, 1..2*n] of integer;
Begin
writeln('matrica A');
for i:=1 to 2*n do
for i:=1 to 2*n do Begin
write ('A(',i,', ',j,')=');
read (A[i,j]);
end;
for i:=1 to 2*n do
for j:=1 to 2*n do
B[(i+n - 1) mod (2*n) + 1, (j+n - 1) mod (2*n) + 1] := A[i,j];
writeln('matrica B');
for i:=1 to 2*n do begin
for j:=1 to 2*n do
write(B[i,j]);
writeln;
end;
end.
1-2 должно получиться 4-2
3-4 3-1
у меня в программе меняет все блоки . как исправить ошибку.
Program MATRISA;
const n=4;
var
i,j : integer;
A, B : ARRAY [1..2*n, 1..2*n] of integer;
Begin
writeln('matrica A');
for i:=1 to 2*n do
for i:=1 to 2*n do Begin
write ('A(',i,', ',j,')=');
read (A[i,j]);
end;
for i:=1 to 2*n do
for j:=1 to 2*n do
B[(i+n - 1) mod (2*n) + 1, (j+n - 1) mod (2*n) + 1] := A[i,j];
writeln('matrica B');
for i:=1 to 2*n do begin
for j:=1 to 2*n do
write(B[i,j]);
writeln;
end;
end.