Положительные элементы матрицы переписать подряд в одномерный массив (блок схема) - PascalABC.NET

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

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

Дано матрицу размерности N на M. Положительные элементы матрицы переписать подряд в одномерный массив В.

Решение задачи: «Положительные элементы матрицы переписать подряд в одномерный массив (блок схема)»

textual
Листинг программы
uses Arrays;
begin
  Randomize;
  var a := CreateRandomIntegerMatrix(ReadLnInteger('N ='), ReadLnInteger('M ='), -9, +9);
  WriteLn('Создана матрица случайных чисел a:');
  WriteMatrix(a, 3);
  var b : array of Integer;
  var count := 0;
  for var Row := 0 to a.GetLength(0)-1 do
    for var Col := 0 to a.GetLength(1)-1 do
      if a[Row, Col] > 0 then
        begin
          count += 1;
          SetLength(b, count);
          b[count-1] := a[Row, Col];
        end;
  WriteLn('Создан одномерный массив b положительных элементов матрицы a:', NewLine, b);
end.

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

  1. Используется пространство имен Arrays.
  2. Задаются размеры матрицы с помощью функции ReadLnInteger.
  3. Создается случайная матрица с помощью функции CreateRandomIntegerMatrix.
  4. Выводится размер матрицы и её содержимое с помощью функции WriteMatrix.
  5. Создается одномерный массив b для хранения положительных элементов матрицы a.
  6. Инициализируется счётчик count для подсчёта положительных элементов.
  7. Происходит перебор элементов матрицы a с помощью двух вложенных циклов.
  8. Если элемент матрицы a[Row, Col] больше нуля, то он копируется в массив b с помощью функции SetLength, а счётчик count увеличивается.
  9. Выводится одномерный массив b с помощью функции WriteLn.

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


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

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

15   голосов , оценка 4.067 из 5
Похожие ответы