Ответ: Подсчёт цифры в семеричной системе
n = int(input())
count = 0
for _ in range(n):
x = int(input())
if x % 7 == 2:
count += 1
if count == 0:
print('NO')
else:
print(count)
У этого задания официального ключа нет, поэтому ответ получен в разборе и с ключом не сверен. Перед тем как заучивать результат, пройдите выкладки — там видно, откуда взялось каждое число.
Напишите программу, которая в последовательности натуральных десятичных чисел определяет количество элементов, запись которых в системе счисления с основанием 7 оканчивается цифрой 2. Если среди входных данных таких элементов нет, программа должна вывести «NO».
Программа получает на вход в первой строке натуральное число $N$ ($3 \leq N \leq 10\,000$), затем $N$ натуральных чисел, не превышающих 30 000, каждое в отдельной строке.
Программа должна вывести одно число — количество десятичных чисел, запись которых в 7-ричной системе счисления оканчивается цифрой 2, или «NO», если среди входных данных таких элементов нет.
Пример работы программы:
Входные данные:
5
37
22
16
25
42
Выходные данные:
2
Где здесь ошибаются
Проверяют делимость числа на 7 вместо проверки остатка, равного 2.
Пытаются сравнивать последнюю цифру десятичной записи числа с 2.
Выводят 0 вместо «NO», когда подходящих чисел нет.
Обрабатывают не все $N$ чисел.