В двумерном массиве [1..6,1..7] поменять местами 1 и 2, 3 и 4, 5 и 6 строки.
В двумерном массиве [1..6,1..7] поменять местами 1 и 2, 3 и 4, 5 и 6 строки.
Ответ(ы) на вопрос:
Гость
// PascalABC.NET 3.2, сборка 1417 от 28.03.2017
// Внимание! Если программа не работает, обновите версию!
begin
Writeln('*** Исходный массив [6,7] ***');
var a:=MatrRandom(6,7,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
Writeln('*** Результирующий массив [6,7] ***');
for var i:=0 to 2 do a.SwapRows(2*i,2*i+1);
a.Println(4)
end.
Пример
*** Исходный массив [6,7] ***
16 -26 -12 33 39 -28 -6
15 -77 15 63 -30 -59 -62
-14 -3 -94 42 49 86 95
-74 75 -69 -44 -43 -2 -62
-68 82 -36 -30 -92 -88 34
-34 16 81 -67 4 -8 80
----------------------------
*** Результирующий массив [6,7] ***
15 -77 15 63 -30 -59 -62
16 -26 -12 33 39 -28 -6
-74 75 -69 -44 -43 -2 -62
-14 -3 -94 42 49 86 95
-34 16 81 -67 4 -8 80
-68 82 -36 -30 -92 -88 34
Гость
Const
N = 6;
M = 7;
Var
A:array[1..N,1..M] of integer;
i,j,B:integer;
Procedure Obmen(n1,n2:integer);
Var
j:integer;
Begin
For j:= 1 to M do
Begin
B:=A[n1,j];
A[n1,j]:=A[n2,j];
A[n2,j]:=B;
End;
End;
Begin
WriteLn('Исходный массив:');
For i:= 1 to N do
Begin
For j:= 1 to M do
Begin
A[i,j]:=random(21)-10;
Write(A[i,j]:3,' ');
End;
WriteLn;
End;
WriteLn('Изменённый массив:');
Obmen(1,2);
Obmen(3,4);
Obmen(5,6);
For i:= 1 to N do
Begin
For j:= 1 to M do
Write(A[i,j]:3,' ');
WriteLn;
End;
End.
Исходный массив:
-1 8 -2 3 -7 3 -10
-4 8 6 2 -1 10 -8
-5 -7 0 2 -6 -2 4
10 -1 -6 -5 2 2 -7
7 -2 8 -8 -3 7 -2
-9 -7 9 2 -2 3 -6
Изменённый массив:
-4 8 6 2 -1 10 -8
-1 8 -2 3 -7 3 -10
10 -1 -6 -5 2 2 -7
-5 -7 0 2 -6 -2 4
-9 -7 9 2 -2 3 -6
7 -2 8 -8 -3 7 -2
Не нашли ответ?
Похожие вопросы