Мне нужно найти все делители заданного целого числа, и из всех этих делителей я должен найти простые числа и поместить их в список от самого низкого до самого высокого.Поиск простых делителей из заданного целого числа
Это то, что я до сих пор:
def prime_divisors(n):
j = 2
list1 = []
prime_list = []
for i in range(2,n+1):
if n%i == 0:
if i==2 or i==3:
prime_list.append(i)
elif i%j == 0:
for j in range(2,n+1,2):
list1.append(j)
elif n%2 == 1 or n%3 == 1:
prime_list.append(n)
return prime_list
return prime_list
prime_divisors(12)
Вам действительно нужно предоставить дополнительную информацию здесь. Что в настоящее время не работает для вас. Вы получаете какие-либо ошибки? Если да, дайте трассировку. – idjaw
Вы используете переменную 'j', прежде чем объявлять ее – Selcuk
Когда я запускаю ее через несколько тестовых примеров. У меня нет ошибок. Просто, что я не получаю все простые числа из заданного целого числа. Например, я считаю, что получаю простые числа для 12. Но для целых чисел, таких как 15 или 28, или один из тестовых примеров включает 1225, я не получаю все простые числа. На самом деле нужна помощь в этом. Извините, что я забыл включить j, но я его отредактировал. – brian012