Жауабы: Среднее трёхзначных чисел
summa = 0
kol = 0
while True:
x = int(input())
if x == 0:
break
if 100 <= x <= 999:
summa += x
kol += 1
if kol == 0:
print('NO')
else:
print(summa / kol)
У этого задания официального ключа нет, поэтому ответ получен в разборе және кілтпен салыстырылмаған. Нәтижені жаттамас бұрын, өтіңіз выкладки — там видно, откуда взялось каждое число.
Напишите программу, которая в последовательности натуральных чисел находит среднее арифметическое трёхзначных чисел или сообщает, что таких чисел нет, выводя NO. На вход подаётся последовательность натуральных чисел, количество которых неизвестно. Последовательность заканчивается числом 0; это число является признаком окончания ввода и не входит в последовательность.
Количество введённых чисел не превышает 20, значения чисел не превышают 1500. Программа должна вывести среднее арифметическое всех трёхзначных чисел или NO, если таких чисел нет. В ответе приведите программу и кратко объясните её работу.
Где здесь ошибаются
Учитывают число 0 в последовательности.
Проверяют только условие x < 1000 и включают однозначные или двузначные числа.
Выводят сумму вместо среднего арифметического.
Делят сумму на общее количество введённых чисел, а не только на количество трёхзначных.
Не обрабатывают случай отсутствия трёхзначных чисел.