Задание №6528.
Создание собственной программы. ЕГЭ по информатике
Пусть
M – сумма минимального и максимального натуральных делителей целого числа, не считая единицы и самого числа. Если таких делителей у числа нет, то значение
M признаётся равным нулю.
Напишите программу, которая перебирает целые числа, бо́льшие 800 000, в порядке возрастания и ищет среди них такие, для которых
M оканчивается на 4. В ответе запишите в первом столбце таблицы первые пять найденных чисел в порядке возрастания, а во втором столбце – соответствующие им значения
M.
Например, для числа 20
М = 2 + 10 = 12.
Количество строк в таблице для ответа избыточно.
Пояснение:
Решим задание, написав программу на языке программирования Python.
def min_max_divisor_sum(n): min_div = None max_div = None for i in range(2, int(n**0.5) + 1): if n % i == 0: min_div = i max_div = n // i break if min_div is None: return 0 return min_div + max_div
# Начинаем перебор с 800001 n = 800001 found = 0 results = []
while found < 5: M = min_max_divisor_sum(n) if M % 10 == 4: results.append((n, M)) found += 1 n += 1
# Вывод таблицы print("Число\tM") for num, M in results: print(f"{num}\t{M}") |
Таким образом, получаем
Найденные числа | M |
| 800004 | 400004 |
| 800009 | 114294 |
| 800013 | 266674 |
| 800024 | 400014 |
| 800033 | 61554 |
Показать ответ
800004 800009 800013 800024 800033 400004 114294 266674 400014 61554
Источник: Демонстрационный вариант ЕГЭ — 2026
Сообщить об ошибке
Тест с похожими заданиями