我正在尝试定义素数,但我的算法无法识别2为prime number. 而是返回None。我在 中尝试Google Colab,Jupiter Notebook结果PyCharm相同。
我的代码:
# V1) Test all divisors from 2 through n-1. (skip 1 and n)
def is_prime_v1(n):
""" Return 'True' if 'n' is a prime number. False otherwise. """
if n == 1:
return False # 1 is not prime
for d in range(2, n):
if n % d == 0:
return False # Is not prime
return True
# ===== Test Function =====
for n in range(1, 21):
print(n, is_prime_v1(n))
我的输出:
1 False
2 None
3 True
4 False
5 True
6 False
7 True
8 False
9 True
10 False
11 True
12 False
13 True
14 False
15 True
16 False
17 True
18 False
19 True
20 False
此外,返回有一些错误,比如9is not a prime number.
繁星点点滴滴
蝴蝶刀刀
qq_笑_17
相关分类