Задание 16 ОГЭ по информатике · 937E26

ПовышеннаяКЭС 3.2
Напишите программу, которая в последовательности натуральных чисел находит среднее арифметическое трёхзначных чисел или сообщает, что таких чисел нет (выводит NO). Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 признак окончания ввода, не входит в последовательность).
Количество чисел не превышает 20. Введённые числа не превышают 1500.
Программа должна вывести среднее арифметическое трёхзначных чисел или вывести «NO», если таких чисел нет.
Пример работы программы:
Входные данныеВыходные данные
10 120 125 0122.5
11 1 0NO
Показать ответ
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)
Подсказки (3)
  1. Каким условием можно проверить, что натуральное число является трёхзначным?
  2. Считывайте числа в цикле до появления 0. Для трёхзначных чисел накапливайте их сумму и увеличивайте счётчик.
  3. После окончания ввода, если счётчик равен нулю, выведите NO. Иначе выведите отношение суммы трёхзначных чисел к их количеству.
Решение
1. Инициализируем переменные для суммы трёхзначных чисел и их количества.
sum=0,count=0

2. Считываем очередное число. Если оно равно 0, завершаем цикл, поскольку 0 не входит в последовательность.
whilex≠0

3. Проверяем, является ли число трёхзначным. Для натуральных чисел это выполняется при условии от 100 до 999 включительно.
100≤x≤999

4. Для каждого трёхзначного числа добавляем его к сумме и увеличиваем количество таких чисел на единицу.
sum:=sum+x,count:=count+1

5. После окончания ввода проверяем наличие трёхзначных чисел. Если их нет, выводим NO, иначе вычисляем среднее арифметическое.
среднее(x)=sumcount

6. Один из корректных вариантов программы:
Частые ошибки
  • Учитывают число 0 в последовательности.
  • Проверяют только условие x < 1000 и включают однозначные или двузначные числа.
  • Выводят сумму вместо среднего арифметического.
  • Делят сумму на общее количество введённых чисел, а не только на количество трёхзначных.
  • Не обрабатывают случай отсутствия трёхзначных чисел.

Источник: Открытый банк ФИПИ

Похожие задания

16Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 8D71A116Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 6 и…Задания открытого банка ФИПИ · 8D8BEF16Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 8E94E616Напишите программу, которая в последовательности натуральных десятичных чисел определяет количество…Задания открытого банка ФИПИ · 90CE3C16Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее…Задания открытого банка ФИПИ · 992C9C16Напишите программу, которая в последовательности натуральных десятичных чисел определяет количество…Задания открытого банка ФИПИ · 9A0EDE16Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 9B061816Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 9BD591

Нужен репетитор по информатике?

Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.

Репетиторы по информатике

Подбор репетитора

Напишите, что нужно, — команда Precettore подберёт репетитора и свяжется с вами.

Готовьтесь к ОГЭ по информатике в Precettore

Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.