Задание №25: Обработка целочисленной информации и маски
Основные типы и прототипы задания №25:
Маски чисел (* и ?)
Делители натуральных чисел
Поиск чисел с особыми свойствами делителей
Условие задания
(А. Кабанов) Обозначим через S сумму простых делителей целого числа, не считая самого числа. Если таких делителей у числа нет, то считаем значение S равным нулю. Напишите программу, которая перебирает целые числа, большие 250000 в порядке возрастания и ищет среди них такие, для которых значение S не равно нулю и кратно 17. Программа должна найти первые 5 таких чисел. Для каждого из них в отдельной строке сначала выводится само число, затем значение S. Строки выводятся в порядке возрастания найденных чисел.
Ответ:
250003 19244<br/>250015 1649<br/>250028 62509<br/>250059 170<br/>250062 663
Шаблон решения на Python
# === Задание 25: Маски чисел и делители ===
from fnmatch import fnmatch
ans = []
for n in range(10**7, 10**8):
if fnmatch(str(n), "12*34?5"):
if n % 2024 == 0:
print(n, n // 2024)