Напишите программу, которая в последовательности натуральных чисел находит среднее...

0 голосов
1.1k просмотров

Напишите программу, которая в последовательности натуральных чисел
находит среднее арифметическое чисел, кратных 8, или сообщает, что таких
чисел нет (выводит «NO»). Программа получает на вход натуральные числа,
количество введённых чисел неизвестно, последовательность чисел
заканчивается числом 0 (0 – признак окончания ввода, не входит
в последовательность).
Количество чисел не превышает 100. Введённые числа не превышают 300.
Программа должна вывести среднее арифметическое чисел, кратных 8, или
вывести «NO», если таких чисел нет. Значение выводить с точностью
до десятых.


Информатика (15 баллов) | 1.1k просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Var a:array[1..101] of integer;
b:array[1..101] of integer;
i,q,s,l,m:integer;
n:real;
begin
i:=1;
q:=1;
l:=1;
while q<>0 do
begin
write ('Введите ',i,' число: ');
read (a[i]);
q:=a[i];
i:=i+1;
s:=i-2;
end;
for i:=1 to s do
begin
if a[i] mod 8 = 0 then
begin
b[l]:=a[i];
m:=l;
l:=l+1;
end;
end;
for l:=1 to m do
begin
n:=n+b[l];
end;
n:=n/m;
if l=1 then write ('NO') else write ('Среднее африметическое = ',n:0:1);
end.


image
(10.7k баллов)