Я новичок в программировании, и я сталкиваюсь с проблемой при попытке написать программу в поиске простого номера. Вот мой код:Почему моя функция простого числа не работает?
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', если * целая петля * закончила, не найдя фактора. – khelwood