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

ПовышеннаяКЭС 3.2
Напишите программу, которая в последовательности натуральных чисел находит среднее арифметическое чисел, оканчивающихся на единицу, или сообщает, что таких чисел нет. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода).
Количество чисел не превышает 100. Введённые числа по модулю не превышают 300.
Программа должна вывести среднее арифметическое чисел, оканчивающихся на единицу, или вывести NO, если таких чисел в последовательности нет.
Пример работы программы:
Входные данныеВыходные данные
21 30 11 016.0
16 5 0NO
Показать ответ
s = 0; count = 0; while True:; x = int(input()); if x == 0:; break; if x % 10 == 1:; s += x; count += 1; if count == 0:; print('NO'); else:; print(s / count)
Подсказки (3)
  1. Какие две величины нужно накапливать при поиске среднего арифметического?
  2. Для проверки окончания числа на единицу используйте условие x mod 10=1. Ввод продолжайте, пока очередное число не равно 0.
  3. Заведите сумму и количество подходящих чисел. После завершения ввода выведите суммаколичество, если количество положительно, иначе выведите NO.
Решение
1. Считываем очередное число. Если оно равно 0, ввод завершается.
x=0

2. Для каждого ненулевого числа проверяем, оканчивается ли оно на единицу, используя остаток от деления на 10. Подходящее число добавляем к сумме и увеличиваем счётчик.
x mod 10=1

3. Если подходящие числа найдены, выводим их среднее арифметическое. Иначе выводим NO.
среднее(x)=Sn

4. Один из возможных вариантов программы:
Частые ошибки
  • Учитывают число 0 как элемент последовательности.
  • Проверяют делимость на 10 вместо проверки остатка 1.
  • Выводят сумму вместо среднего арифметического.
  • Не обрабатывают случай, когда подходящих чисел нет.
  • Используют целочисленное деление вместо обычного деления.

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

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

16Напишите программу, которая в последовательности целых чисел определяет количество чисел, кратных 6 или 11.…Задания открытого банка ФИПИ · 40A3D016Напишите программу, которая в последовательности натуральных чисел определяет минимальное чётное число.…Задания открытого банка ФИПИ · 415E5216Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее…Задания открытого банка ФИПИ · 41D07B16Напишите программу для решения следующей задачи. Девятиклассники участвовали в викторине по математике.…Задания открытого банка ФИПИ · 41E9E116Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 6 и…Задания открытого банка ФИПИ · 45C8CD16Напишите программу, которая в последовательности натуральных десятичных чисел определяет количество…Задания открытого банка ФИПИ · 46CC6616Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 3 и…Задания открытого банка ФИПИ · 498AD516Напишите программу, которая в последовательности натуральных чисел определяет количество трёхзначных чисел…Задания открытого банка ФИПИ · 49F582

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

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

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

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

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

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

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