Turning an array.
Дана целочисленная матрица размером 6 на 6. Преобразовать массив, осуществив поворот но 90 градусов по и против часовой стрелки.
program turnArray;
const n=6;
type arr = array[1..n,1..n] of integer;
var a,b:arr;
i,j:byte;
procedure printArray(c:arr;header:String);
var i,j:byte;
begin
writeln;
writeln(header);
for i:=1 to n do
begin
for j:=1 to n do
write(c[i,j]:3,',');
writeln;
end;
end;
begin
randomize;
for i:=1 to n do
for j:=1 to n do
a[i,j]:=random(20)-5;
printArray(a,'Initial Array:');
for i:=1 to n do
for j:=1 to n do
b[i,j]:=a[j,n-i+1];
printArray(b,'Counterclockwise turned Array:');
for i:=1 to n do
for j:=1 to n do
b[i,j]:=a[n-j+1,i];
printArray(b,'Clockwise turned Array:');
end.
|