В двумерном массиве [1..6,1..7] поменять местами 1 и 2, 3 и 4, 5 и 6 строки.

0 голосов
72 просмотров

В двумерном массиве [1..6,1..7] поменять местами 1 и 2, 3 и 4, 5 и 6 строки.


Информатика (158 баллов) | 72 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

 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

(34.0k баллов)
0

спасибо.

0 голосов
// 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
(150k баллов)
0

спасибо ^^ жаль, что у меня другая версия, и учат пользоваться другими командами

0

паскаль, версия 3.0.1.35. разве кому-то что-то это даст?

0

про паскаль да, моя ошибка.