Дана вещественная матрица M(4,3). Подсчитать число отрицательных и сумму положительных элементов - Pascal
Формулировка задачи:
Дана вещественная матрица M(4,3). Подсчитать число отрицательных и сумму положительных элементов данной матрицы.
Пожалуйста, помогите решить
Решение задачи: «Дана вещественная матрица M(4,3). Подсчитать число отрицательных и сумму положительных элементов»
textual
Листинг программы
const
N = 4;
M = 3;
var
ar: Array[1..N, 1..M] Of Real;
i: 1..N;
j: 1..M;
count: 0..N*M;
sum: Real;
begin
Randomize;
WriteLn('M:');
sum := 0;
count := 0;
for i := 1 to N do
begin
for j := 1 to M do
begin
ar[i, j] := Random*198 - 99;
Write(ar[i, j]:7:2);
if (ar[i, j] < 0)
then
Inc(count)
else
sum := sum + ar[i, j];
end;
WriteLn;
end;
WriteLn('Количество отрицательных: ', count);
WriteLn('Сумма положительных: ', sum:0:2);
end.
Объяснение кода листинга программы
- Объявляются константы
NиMс значениями 4 и 3 соответственно. - Объявляется переменная
ar- двумерный массив размерности N на M для хранения вещественных чисел. - Объявляются переменные:
i- для итерации по строкам (от 1 до N),j- для итерации по столбцам (от 1 до M),count- для подсчета отрицательных элементов (от 0 до N*M),sum- для хранения суммы положительных элементов. - Инициализируется генератор случайных чисел.
- Выводится текст
M:. - Обнуляются переменные
sumиcount. - Начинается цикл по строкам (от 1 до N).
- В каждой строке начинается цикл по столбцам (от 1 до M).
- Генерируется случайное вещественное число и сохраняется в массиве
arс двумя знаками после запятой. - Выводится значение элемента массива
ar[i, j]с отступом в 7 символов и двумя знаками после запятой. - Если значение элемента
ar[i, j]меньше нуля, увеличивается значение переменнойcountна 1, иначе значение элемента добавляется к переменнойsum. - Завершается цикл по столбцам.
- Печатается перевод строки.
- Количество отрицательных элементов выводится на экран.
- Сумма положительных элементов выводится на экран с двумя знаками после запятой.