Напишите программу, которая ищет среди целых чисел, принадлежащих числовому отрезку [231893; 251859], число, имеющее максимальное количество различных натуральных делителей, если таких чисел несколько — найдите максимальное из них. Запишите через пробел количество делителей такого числа и само число.
def countDelitel(n): # функция, которая возращает кол-во делителей числа
count = 0
for j in range(1, int(n ** 0.5) + 1):
if n % j == 0:
count += 2
if j == n // j:
count -= 1
return count
maxCountDelit = 0
maxNumber = 0
for i in range(231893, 251859 + 1):
k = countDelitel(i)
if k >= maxCountDelit: #нестрогий знак для того чтобы вывести максимальное(последнее) число
maxCountDelit = k
maxNumber = i
print(maxCountDelit, maxNumber)
Ответ: 160 249480