Помогите найти ошибку (Информатика, Паскаль).
var s,k,a:integer;
Begin
s:=0;
k:=0;
Read(a);
while a<>0 do
Begin
if a mod 8=0 then
Begin
s:=s+a;
k:=k+1;
end;
Readln(a);
end;
var y:real;
begin
y:= s/k;
Read(s);
if s>0 then
Writeln(y)
else
Writeln('NO')
end;
end.
nikichosipov:
Но она почему-то не работает! В последовательности чисел программа находит среднее арифметическое кратных 8 или сообщает, что таких чисел нет (NO). Последовательность чисел заканчивается на 0.
Ответы на вопрос
Ответил petyaGavrikov
0
var s,k,a:integer;
Begin
s:=0;
k:=0;
Readln(a);
while a<>0 do
Begin
if a mod 8=0 then
Begin
s:=s+a;
k:=k+1;
end;
Readln(a);
end;
if k>0 then Writeln(s/k)
else Writeln('NO')
end.
Пример:
43
61
16
95
24
0
20
Begin
s:=0;
k:=0;
Readln(a);
while a<>0 do
Begin
if a mod 8=0 then
Begin
s:=s+a;
k:=k+1;
end;
Readln(a);
end;
if k>0 then Writeln(s/k)
else Writeln('NO')
end.
Пример:
43
61
16
95
24
0
20
Новые вопросы
Алгебра,
1 год назад
Литература,
1 год назад
Математика,
2 года назад
Математика,
2 года назад
Алгебра,
7 лет назад