Массив: Сформировать массив A из ненулевых элементов исходной матрицы X. - Pascal ABC

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

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

Сформировать матрицу X[5,7] случайно. Сформировать массив A из ненулевых элементов матрицы X.

Решение задачи: «Массив: Сформировать массив A из ненулевых элементов исходной матрицы X.»

textual
Листинг программы
const
  n = 5;
  m = 7;
 
var
  x: array[1..n, 1..m] of integer;
  i, j, k: integer;
  a: array[1..n * m] of integer;
 
begin
  randomize;
  k := 0;
  for i := 1 to n do
  begin
    for j := 1 to m do
    begin
      x[i, j] := -n * m div 2 + random(n * m + 1);
      if x[i, j] <> 0 then 
      begin
        k := k + 1;
        a[k] := x[i, j];
      end;
      write(x[i, j]:5);
    end;
    writeln;
  end;
  writeln;
  for i := 1 to k do
    write(a[i]:5);
end.

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

  1. В начале кода объявляются переменные: — n, m — размеры матрицы X (5 и 7 соответственно); — x — матрица размером n на m, заполненная случайными ненулевыми числами от -25 до 25; — i, j, k — счётчики, используемые в циклах; — a — массив, в который будут копироваться ненулевые элементы матрицы X.
  2. Затем выполняется инициализация генератора случайных чисел: randomize.
  3. Переменная k инициализируется нулём. Она используется для подсчёта количества ненулевых элементов матрицы X.
  4. Два вложенных цикла выполняют следующие действия: — внешний цикл перебирает номера строк матрицы X от 1 до n; — внутренний цикл перебирает номера столбцов матрицы X от 1 до m; — в каждой итерации внутреннего цикла в элемент матрицы X[i, j] записывается случайное ненулевое число; — если элемент матрицы X[i, j] ненулевой, то: — к переменной k прибавляется единица; — в элемент массива a[k] записывается значение элемента матрицы X[i, j].
  5. После завершения циклов выводится на экран строка, разделённая двоеточием, для каждого элемента матрицы X.
  6. Затем выводится на экран строка, разделённая двоеточием, для каждого элемента массива a.

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


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

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

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