Я пытался решить проблему эйлера проекта 35, и мне нужно сделать функцию, которая скажет мне, является ли целое число круговым простым. У меня есть стандартная функция isprime
и функция, которая дает список поворота цифр. Мой поворот код и iscircularprime
код здесь:iscircularprime function in python
def rotate(n):
rotlist = []
m = str(n)
counter = 0
while counter < len(str(n)):
m = m[1:] + m[0]
rotlist.append(int(m))
counter += 1
return rotlist
def iscircularprime(n):
np = [0,2,4,5,6,8]
y = str(n)
for j in y:
if int(j) in np:
return False
if isprime(n)==False:
return False
m = rotate(n)
for i in m:
if isprime(i)==True:
return True
else:
return False
Я не включил мою isprime
функцию, как это довольно стандартный. Моя функция будет правильно идентифицировать, является ли простое число круговым, как в случае с 197, но также будет идентифицировать некоторые некруглые простые числа как круговые, такие как 191, которые не являются круговыми, поскольку 119 не является простым. Я не вижу, что не так с моей функцией iscircularprime
, было интересно, есть ли у кого-нибудь идеи?
Ах это полезно, должно быть хорошо завершая проблему, благодарю за помощь –