Найти произведение положительных элементов каждого столбца матрицы - Turbo Pascal

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

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

Нужно найти произведение положительных элементов каждого столбца матрицы А, ее размер вводиться с клавиатуры, а элементы нужно разместить в памяти динамически. Буду благодарен за помощь

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

textual
Листинг программы
type
  TIntArr = array [0..32764] of Integer;
  PIntArr = ^TIntArr;
var
  a: PIntArr;
  m, n, mn, i, j: Integer;
  p: Real;
begin
  Randomize;
  repeat Write('m n: '); Read(m,n); until (m>1) and (n>1);
  mn:=m*n;
  GetMem(a,SizeOf(Integer)*mn);
  for j:=0 to mn-1 do begin
    if j mod n=0 then WriteLn;
    a^[j]:=-9+Random(19); Write(a^[j]:8);
  end; WriteLn;
  WriteLn('Произведения:');
  for j:=0 to n-1 do begin
    p:=1; i:=j;
    while i<mn do begin
      if a^[i]>0 then p:=p*a^[i];
      Inc(i,n);
    end; Write(' ',p:7:0);
  end; WriteLn;
  FreeMem(a,SizeOf(Integer)*mn);
end.

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

  1. В начале кода объявляются необходимые переменные и создается тип данных TIntArr.
  2. Затем происходит инициализация генератора случайных чисел и считывание значений переменных m и n для создания матрицы.
  3. Вычисляется произведение mn (множение m на n).
  4. Выделяется память под массив целых чисел размером mn.
  5. В цикле for перебираются все элементы массива a.
  6. Если текущий индекс i меньше mn, то проверяется, является ли элемент a^[i] положительным.
  7. Если элемент положительный, то его произведение p умножается на текущий элемент.
  8. Индекс i увеличивается на n, и цикл while повторяется до тех пор, пока i меньше mn.
  9. После завершения цикла, выводится значение переменной p.
  10. Выводится сообщение Произведения:.
  11. В следующем цикле for перебираются все элементы массива a.
  12. Выводится пробел и значение переменной p.
  13. Выводится сообщение ``.
  14. Выводится значение переменной p.
  15. Выводится сообщение ``.
  16. Выводится значение переменной p.
  17. Выводится сообщение ``.
  18. Выводится значение переменной p.
  19. Выводится сообщение ``.
  20. Выводится значение переменной p.
  21. Освобождается память, выделенная под массив.

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


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

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

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