Я новичок в программировании и сталкиваюсь с проблемой, когда пытаюсь написать программу для определения простого числа. Вот мой код:
def is_prime(x):
if x < 2:
return False
elif x == 2:
return True
else:
for n in range (2,x-1):
if x % n == 0:
return False
else:
return True
Я получил сообщение об ошибке: «Ваша функция не работает на is_prime (3). Она возвращает None, когда должна возвращать True».
Может кто-нибудь объяснить недостаток в этом коде?
Спасибо!
True
илиFalse
в первой итерации (и ничего, если у него нет итераций). Вы должны возвращатьTrue
только в том случае, если весь цикл завершился без определения множителя. - person khelwood   schedule 02.08.2016