Двумерный массив из четного числа столбцов. Поменять местами первый столбец со вторым, третий — с четвертым и т. д.
Код:
procedure TForm4.Button26Click(Sender: TObject);
var i,j:byte;
begin
randomize; //Заполняем массив случайными числами
stringgrid1.ColCount:=d;
stringgrid1.RowCount:=d;
for i:=1 to d do
for j:=1 to d do
mas3[i,j]:=-4+random(21);
for i:=0 to d-1 do
for j:=0 to d-1 do
stringgrid1.Cells[i,j]:=inttostr(mas3[j+1,i+1]);
end;
procedure TForm4.Button28Click(Sender: TObject);
var i,j:byte; //Меняем столбцы местами
x:integer;
begin
for j:=1 to d div 2 do
for i:=1 to d do
begin
x:=mas3[i,j];
mas3[i,j]:=mas3[i,d-j+1];
mas3[i,d-j+1]:=x;
end;
stringgrid2.ColCount:=d;
stringgrid2.RowCount:=d;
for i:=0 to d-1 do
for j:=0 to d-1 do
stringgrid2.Cells[i,j]:=inttostr(mas3[j+1,i+1]);
end;
Здесь, получается, что он меняет 1 с 4, 2 с 3. А нужно 1 со 2, 3 с 4!