Переписать положительные элементы главной диагонали матрицы в одномерный массив Y - Pascal ABC

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

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

Действующий код есть, но никак не получается сделать так, чтобы программа проскакивала отрицательные числа, вместо этого она выдаёт 0. Как это можно исправить?

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

textual
Листинг программы
program SumPol;
 
uses
  Crt;
 
const
  M = 5;
  N = 5;
 
var
  A: Array[1..M, 1..N] of Real;
  P, I: 1..M;
  Q, J: 1..N;
  B: array[1..M] of Real;
  S: Real;
 
begin
  ClrScr;
  Write('Введите размерность матрицы не более 5*5: ');
  Readln(P, Q);
  Writeln('Введите элементы матрицы:');
  for I := 1 to P do
    for J := 1 to Q do
    begin
      Write('A[', I:1, ', ', J:1, ']=');
      Readln(A[I, J])
    end;
  Writeln('Контрольный вывод матрицы: ');
  for I := 1 to P do
  begin
    for J := 1 to Q do Writeln(A[I, J]:4:2, ' ':3);
  end;
  
  
  for I := 1 to P do
    
    if A[I, I] > 0 Then 
    begin
      B[I] := A[I, I];
      write(B[I], ' ');
    end;
  
end

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

  1. Создается программа SumPol.
  2. Используются единицы и нули для представления истинности и ложности в виде логических переменных.
  3. Задаются константы M и N, которые представляют размерность матрицы.
  4. Создается переменная A, которая представляет матрицу размером M на N.
  5. Создаются переменные P и Q, которые представляют номер строки и столбца соответственно.
  6. Создается переменная B, которая представляет одномерный массив для хранения положительных элементов главной диагонали.
  7. Создается переменная S, которая представляет сумму элементов массива B.
  8. Выводится приглашение на ввод размераности матрицы.
  9. Выполняется чтение размераности матрицы.
  10. Выводится приглашение на ввод элементов матрицы.
  11. Выполняется чтение элементов матрицы.
  12. Выводится контрольный вывод матрицы.
  13. Выполняется вывод элементов матрицы в виде строки.
  14. Выполняется вывод положительных элементов главной диагонали в виде строки.
  15. Выполняется вывод суммы элементов массива B.
  16. Выполняется цикл по строке матрицы.
  17. Выполняется проверка условия A[I, I] > 0.
  18. Если условие истинно, то копируется элемент A[I, I] в массив B.
  19. Выводится значение элемента B[I].
  20. Цикл по строке матрицы завершается.
  21. Программа завершается.

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


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

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

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