Найти все числа у которых три делителя в диапазоне от 2 до 50
Не могу найти все числа у которых три делителя в диапазоне от 2 до 50. Что делаю не так?
Пробовала двумя разными вариантами. Когда делаю первым способом, vscode находит только два делителя 1 и 50, вторым способом вообще ничего не работает.
def f(n):
lst = []
for i in range(1, int(n**0.5)):
if n % i == 0:
lst.append(i)
lst.append(n // 1)
return lst
print(f(50))
for i in range(2, 50+1):
a = []
for j in range(2, i):
if i % j == 0:
a.append(j)
if len(a) == 3:
print(a)