РУҚА
16

Решение: Среднее двузначных чисел

ОГЭ · Информатика · Задание 16 · Основы программирования
ПовышеннаяФИПИ2E2591Развёрнутое решение≈ 10 минутРазбор в 5 шагов
Условие

Напишите программу, которая в последовательности натуральных чисел находит среднее арифметическое двузначных чисел или сообщает, что таких чисел нет. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность заканчивается числом 0 (0 — признак окончания ввода, не является членом последовательности).

Количество чисел не превышает 100. Введённые числа не превышают 300.

Программа должна вывести среднее арифметическое двузначных чисел или вывести NO, если таких чисел в последовательности нет.

Пример работы программы:
Входные данные:
13
154
56
0

Выходные данные:
34.5

Входные данные:
269
5
0

Выходные данные:
NO

Открыть задачу и решить самому
Дальше ответЕсли ещё решаете — начните с подсказок: они ведут к ответу, но не выдают его.
К подсказкам

Решение по шагам

5 шагов
1

Считываем очередное число. Если оно равно 0, ввод завершается.

$$n = 0$$
2

Для каждого двузначного числа, то есть числа от 10 до 99 включительно, увеличиваем количество таких чисел и прибавляем число к сумме.

$$10 \leq n \leq 99$$
3

После завершения цикла проверяем, были ли найдены двузначные числа. Если да, выводим отношение суммы к их количеству; иначе выводим NO.

$$\overline{n} = \dfrac{S}{k}$$
4

Один из возможных вариантов программы на Python:

s = 0
count = 0

n = int(input())
while n != 0:
if 10 <= n <= 99:
s += n
count += 1
n = int(input())

if count > 0:
print(s / count)
else:
print('NO')

Ответ

Программа должна считать сумму и количество двузначных чисел до ввода 0, затем вывести s / count либо NO при отсутствии таких чисел.

Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.

Где здесь ошибаются

Включают число 0 в обработку или проверяют его как двузначное число.

Проверяют только условие n < 100 и ошибочно относят однозначные числа к двузначным.

Не проверяют count перед делением и получают ошибку деления на ноль.

Используют целочисленное деление вместо обычного деления.

Закрепить приёмВ теме «Основы программирования» ещё 153 задачи — с ответом и таким же разбором.
Тренироваться

Как решать задание 16 ОГЭ, информатика

Разбор этой задачи разложен на 5 шагов: видно, откуда берётся каждое число и где теряется балл. Ответ приведён рядом с выкладками, а не вместо них.

Задача из темы «Основы программирования»: в ней 154 задачи, и у каждой есть такой же разбор. Регистрация не нужна.