Найдите в диапазоне [2; 10000000] числа, каждое из которых имеет максимальное количество простых делителей среди всех чисел этого отрезка. Выведите минимальное из найденных чисел и через пробел количество его простых делителей.
Ваш код не работает, потому что он не соответствует условиям задачи. Ваш код пытается найти количество простых делителей для каждого числа в диапазоне, но он не работает правильно. Вот исправленный код, который решает задачу: from math import sqrt
def prime_factors:
i = 2
factors = set()
while i * i 1:
factors.add
return factors
max_factors = 0
min_number = 0
for i in range(2, 10000001):
factors = prime_factors(i)
if len(factors) > max_factors:
max_factors = len(factors)
min_number = i
for i in range(2, 10000001):
count = 0
for j in range(1, (i + 1) // 2):
if i % j == 0:
count += 1
if count == 2:
number += 1
if count > mx:
mx = count
min_number = i
print(min_number, mx)
Этот код должен правильно находить число с максимальным количеством простых делителей в заданном диапазоне и выводить его, а также количество простых делителей