Поменять местами k-ую и l-ую строки матрицы - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

Матрица размещена в одномерном массиве по строкам. Поменять местами k-ую и l-ую строки матрицы(k и l заданы). Результат напечатать по строкам. То есть, k-ая строка матрицы расположена в одномерном массиве в элементах (( k-l)*m+1)-го до (k*m)-го.

Решение задачи: «Поменять местами k-ую и l-ую строки матрицы»

textual
Листинг программы
  1. var
  2.   b:array of integer;
  3.   i,j,m,n,k,l:integer;
  4. begin
  5.   randomize;
  6.   writeln('Введите размерность матрицы:');
  7.   repeat  m:=readinteger('Число строк:'); until m>1;
  8.   repeat  n:=readinteger('Число столбцов:'); until n>1;  
  9.   writeln('Исходная матрица:');
  10.   SetLength(b,m*n);
  11.   k:=0;
  12.   for i:=1 to m do begin
  13.      write(i:5,'|' );
  14.     for j:=1 to n do begin
  15.        b[k]:=random(10);
  16.        write(b[k]:4);
  17.        k:=k+1;
  18.     end;
  19.     writeln;
  20.   end;
  21.    writeln(b);
  22.    repeat
  23.      write('Введите номера строк, через пробел, которые нужно поменять местами:');
  24.      readln(l,k);
  25.    until (l in [1..m]) and (k in [1..m]);
  26.    writeln('Полученная матрица:');
  27.    for i:=0 to n-1 do swap(b[(k-1)*n+i],b[(l-1)*n+i]);
  28.    writeln(b);
  29.    k:=0;
  30.   for i:=1 to m do begin
  31.      write(i:5,'|' );
  32.     for j:=1 to n do begin
  33.        write(b[k]:4);
  34.        k:=k+1;
  35.     end;
  36.     writeln;
  37.   end;
  38.  
  39. end.

Объяснение кода листинга программы

  1. Переменная b представляет собой одномерный массив целых чисел, который будет использоваться для хранения значений матрицы.
  2. Переменные i, j, m, n, k, l используются для управления циклами и индексации элементов матрицы.
  3. В начале программы пользователю предлагается ввести размерность матрицы.
  4. Затем выводится исходная матрица, заполненная случайными значениями.
  5. Пользователю предлагается ввести номера строк, которые необходимо поменять местами.
  6. Если введенные номера удовлетворяют условиям (принадлежат диапазону от 1 до размера матрицы), то происходит обмен строками.
  7. Выводится полученная матрица.
  8. Код повторяет вывод исходной матрицы для наглядности.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.125 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы