В двумерном массиве [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
Не нашли ответ?
Ответить на вопрос
Похожие вопросы