For i:=1 to n do if a[i] > 0 then begin k:=k+1; sum:=sum+a[i] end; average:=sum/k;
(a - данный массив, sum - сумма всех положительных чисел, k - количество положительных чисел - n - индекс последнего элемента массива, i - переменная для цикла, average - переменная, сохраняющая численное значение) Запускаем цикл от 1 до n и перебираем все числа массива. Если i-тое число положительно, мы прибавляем его к sum, и увеличиваем k на 1, который сохраняет в себе количество положительных чисел массива. После завершения цикла, мы получаем k - количество положительных чисел, sum - сумма всех положительных чисел. Чтобы найти среднее арифметическое, делим сумму всех чисел на их количество. (Учитывайте, что переменная, сохраняющая среднее арифметическое должна иметь вещественный тип (real, double...)) Вот и всё. Если у вас возникают какие-то проблемы или ошибки в коде - оставьте комментарий. Если у вас проблемы с созданием массива (чтение массива с клавиатуры или создание массива со случайными числами) - опять же таки пишите:)
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ArrRandom(20,1,99); a.Println;
Writeln('Среднее значение ',a.Average)
end.
Пример
22 18 94 79 69 25 23 95 84 40 63 75 78 54 87 50 24 77 37 79
Среднее значение 58.65
if a[i] > 0 then
begin
k:=k+1;
sum:=sum+a[i]
end;
average:=sum/k;
(a - данный массив, sum - сумма всех положительных чисел, k - количество положительных чисел - n - индекс последнего элемента массива, i - переменная для цикла, average - переменная, сохраняющая численное значение)
Запускаем цикл от 1 до n и перебираем все числа массива. Если i-тое число положительно, мы прибавляем его к sum, и увеличиваем k на 1, который сохраняет в себе количество положительных чисел массива.
После завершения цикла, мы получаем k - количество положительных чисел, sum - сумма всех положительных чисел. Чтобы найти среднее арифметическое, делим сумму всех чисел на их количество.
(Учитывайте, что переменная, сохраняющая среднее арифметическое должна иметь вещественный тип (real, double...))
Вот и всё. Если у вас возникают какие-то проблемы или ошибки в коде - оставьте комментарий. Если у вас проблемы с созданием массива (чтение массива с клавиатуры или создание массива со случайными числами) - опять же таки пишите:)