В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
paradoksina
paradoksina
07.07.2020 10:50 •  Информатика

Преобразовать целочисленную матрицу размера n x m таким образом, чтобы строка с номером k непосредственно следовала за строкой с номером q, сохранив порядок следования остальных строк

Показать ответ
Ответ:
бека150
бека150
07.10.2020 16:00
// PascalABC.NET 3.3, сборка 1600 от 23.12.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var (n,m):=ReadInteger2('Количество строк и столбцов в матрице:');
  Writeln('*** Исходная матрица ***');
  var a:=MatrRandom(n,m,-99,99);
  a.Println(4); Writeln(4*a.ColCount*'-');
  var (q,k):=ReadInteger2('Укажите номера строк q и k:');
  Assert((k<>q) and k.Between(1,n) and q.Between(1,n),'Неверная пара (q,k)');
  k-=1; q-=1; // перешли к индексам
  var rk:=a.Row(k);
  if k<q then begin
    for var r:=k+1 to q do a.SetRow(r-1,a.Row(r));
    a.SetRow(q,rk)
    end
  else begin
    for var r:=k-1 downto q+1 do a.SetRow(r+1,a.Row(r));
    a.SetRow(q+1,rk)
    end;
  Writeln('*** Результат ***'); a.Println(4)
end.

Примеры
Количество строк и столбцов в матрице: 5 8
*** Исходная матрица ***
  32  -6 -66  81  84   0  50 -83
  93   5  90 -33  88  30  -5  85
 -46  35 -22  74 -66   8  -3 -86
 -23 -81 -82  30  -1 -71  28  19
   0 -95 -30 -46 -24 -77  38  49
--------------------------------
Укажите номера строк q и k: 4 1
*** Результат ***
  93   5  90 -33  88  30  -5  85
 -46  35 -22  74 -66   8  -3 -86
 -23 -81 -82  30  -1 -71  28  19
  32  -6 -66  81  84   0  50 -83
   0 -95 -30 -46 -24 -77  38  49

Количество строк и столбцов в матрице: 4 3
*** Исходная матрица ***
 -68  53 -35
 -83  78 -78
  99  -4  -9
 -86  11 -30
------------
Укажите номера строк q и k: 2 4
*** Результат ***
 -68  53 -35
 -83  78 -78
 -86  11 -30
  99  -4  -9

Преобразовать целочисленную матрицу размера n x m таким образом, чтобы строка с номером k непосредст
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота