РУҚА
16

Решение: Сумма чисел по остатку

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

Напишите программу, которая в последовательности натуральных десятичных чисел определяет сумму элементов, запись которых в системе счисления с основанием 7 оканчивается цифрой 3. Если среди входных данных таких элементов нет, программа должна вывести «NO».

Программа получает на вход в первой строке натуральное число $N$ ($3 \leq N \leq 10\,000$), затем $N$ натуральных чисел, не превышающих $30\,000$, каждое в отдельной строке.

Программа должна вывести одно число — сумму десятичных чисел последовательности, запись которых в 7-ричной системе счисления оканчивается цифрой 3, или «NO», если среди входных данных таких элементов нет.

Пример входных данных:
5
33
63
17
24
53

Пример выходных данных:
41

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

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

5 шагов
1

Последняя цифра записи натурального числа в системе счисления с основанием 7 определяется остатком от деления этого числа на 7. Поэтому подходят числа, для которых выполняется условие:

$$x \bmod 7 = 3$$
2

Будем последовательно обрабатывать все $N$ чисел. Для подходящих чисел увеличиваем сумму и количество найденных элементов.

3

Если количество подходящих элементов равно нулю, выводим `NO`; иначе выводим накопленную сумму.

4

В приведённом примере подходят числа 17 и 24, поскольку $17 \bmod 7 = 3$ и $24 \bmod 7 = 3$. Их сумма равна:

$$17 + 24 = 41$$

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

$$n = int(input()) s = 0 count = 0 for _ in range(n): x = int(input()) if x % 7 == 3: s += x count += 1 if count == 0: print('NO') else: print(s)$$
Ответ

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

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

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

Проверяют последнюю цифру десятичной записи вместо остатка от деления на 7.

Суммируют остатки от деления, а не исходные числа.

Выводят 0 вместо `NO`, если подходящих чисел нет.

Забывают обработать все $N$ входных чисел.

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

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

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

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