Найти среднее арифметическое положительных элементов массива - Free Pascal
Формулировка задачи:
Дан целочисленный линейный массив на N элементов. Найти среднее арифметическое значение положительных элементов. Если таких элементов не существует, среднее арифметическое принять равным нулю.
Решение задачи: «Найти среднее арифметическое положительных элементов массива»
textual
Листинг программы
const n= 10;
type Tmass= array[1..n] of integer;
var A: Tmass;
i,k,sum: integer;
res: Real;
begin
Randomize;
for i:=1 to n do begin
A[i]:= Random(100)-50;
Write(A[i]:5);
end;
Writeln;
k:=0; sum:=0;
for i:=1 to n do
if A[i]>0 then begin
Inc(k);
sum:= sum+A[i];
end;
if k>0 then begin
res:= sum/k;
Writeln(' Arithmetic average =', res:1:2)
end else
Writeln(' Arithmetic average =', 0);
Readln;
end.
Объяснение кода листинга программы
- Объявляются константы и переменные:
- n = 10 (количество элементов в массиве)
- Tmass = array[1..n] of integer (тип массива)
- A: Tmass (объявление переменной типа массив)
- i, k, sum: integer (обычные переменные для цикла)
- res: Real (результат будет числом с плавающей точкой)
- Инициализируются случайные значения для элементов массива
- Выводятся все элементы массива
- В цикле подсчитывается количество положительных элементов массива и их сумма
- Проверяется, есть ли положительные элементы в массиве
- Если есть, то вычисляется среднее арифметическое и выводится на экран
- Если положительных элементов нет, то выводится 0
- Программа ожидает ввода пользователя для завершения работы