Информатика. ЕГЭ
Задания для подготовки
Задачи разных лет из реальных экзаменов, демо-вариантов, сборников задач и других источников
Задание 25. Информатика. ЕГЭ. Апробация. 14.05.2025-1
- Просмотры: 2243
- Изменено: 9 июня 2025
Напишите программу, которая перебирает целые числа, большие \(800~000,\) в порядке возрастания и ищет среди них такие, у которых есть натуральный делитель, оканчивающийся на цифру \(7\) и не равный ни самому числу, ни числу \(7.\) В ответе запишите в первом столбце таблицы первые пять найденных чисел в порядке возрастания, а во втором столбце — пять соответствующих этим числам минимальных делителей, оканчивающихся на цифру \(7,\) не равных ни самому числу, ни числу \(7.\)
Количество строк в таблице для ответа избыточно.
Решение:
Python
def div7(n):
divisors = set()
for x in range(2, int(n**0.5) + 1):
if n % x == 0:
if x != 7 and x % 10 == 7:
divisors.add(x)
d = n // x
if d % 10 == 7:
divisors.add(d)
return min(divisors) if divisors else 0
q = 0
n = 800_000
while q < 5:
n += 1
d = div7(n)
if d:
print(n, d)
q += 1
Ответ:
\(800001 \,\, 927\)
\(800003 \,\, 17\)
\(800004 \,\, 1227\)
\(800006 \,\, 1487\)
\(800007 \,\, 2847\)
Обсуждение задания
Здесь пока нет ни одного комментария. Будьте первым!


