Подсчитать количество строк в двумерном массиве, сумма положительных элементов которых больше заданного числа - Pascal
Формулировка задачи:
Подсчитать количество строк в двумерном массиве сумма положительных элементов которых больше числа p.
Решение задачи: «Подсчитать количество строк в двумерном массиве, сумма положительных элементов которых больше заданного числа»
textual
Листинг программы
const max=20; var c:array[1..max,1..max] of integer; m,n,i,j,p,k,s:integer; begin randomize; repeat write('Количество строк от 2 до ',max,' m='); readln(m); until m in [2..max]; repeat write('Количество столбцов от 2 до ',max,' n='); readln(n); until n in [2..max]; writeln('Исходная матрица'); for i:=1 to m do begin for j:=1 to n do begin c[i,j]:=-10+random(21); write(c[i,j]:4); end; writeln; end; write('P='); readln(p); k:=0; for i:=1 to m do begin s:=0; for j:=1 to n do if c[i,j]>0 then s:=s+c[i,j]; if s>p then k:=k+1; end; write('Количество строк по условию=',k) end.
Объяснение кода листинга программы
- В начале кода объявляются необходимые переменные: максимальное значение для строк и столбцов (max), двумерный массив целых чисел (c), а также переменные для работы с чтением и записью (m, n, i, j, p, k, s).
- Затем выполняется цикл повторения, который запрашивает у пользователя количество строк и столбцов матрицы. Это делается до тех пор, пока введенные значения не будут находиться в допустимом диапазоне.
- После этого выводится сообщение с информацией о количестве строк и столбцов матрицы.
- Далее идет цикл повторения, который проходит по каждой строке матрицы. В каждой строке инициализируется переменная c[i,j] значением -10 + random(21), где random(21) генерирует случайное число от 0 до 20.
- После завершения цикла для каждой строки выводится значение c[i,j] с использованием функции write.
- Затем выводится сообщение с заданным пользователем числом P.
- После этого инициализируется переменная k, которая будет использоваться для подсчета количества строк, удовлетворяющих условию.
- Далее идет цикл повторения, который проходит по каждой строке матрицы. Внутри цикла переменная s инициализируется значением 0.
- Если значение c[i,j] больше 0, то значение переменной s увеличивается на 1.
- Если значение s больше p, то значение переменной k увеличивается на 1.
- После завершения цикла для каждой строки выводится количество строк, удовлетворяющих условию, с использованием функции write.
- Код завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д