
if x <= 1: return False if x == 2: return True for i in range(2,x): if x % i == 0: return False else: return True 自己写的一个判断素数的小程序,但是不知道为什么会把 9 , 15 等这些数判为素数。。
1 zzy8200 2015 年 10 月 10 日 via iPhone 去掉 else |
2 saber000 2015 年 10 月 10 日 姑且认为第一行的缩进被吞了,else 和下面的代码往左一个缩进 |
3 BraveRBT 2015 年 10 月 10 日 注意缩进对其 另外应该是 Pythoner~? |
4 zzy8200 2015 年 10 月 10 日 via iPhone 去掉 else:后把 return True 拿到最外面,你这个只会判断是否是偶数 |
5 BraveRBT 2015 年 10 月 10 日 直接给楼主附上修改后的代码咯 :) def is_prime(x): if x <= 1: return False if x == 2: return True for i in range(2,x): if x % i == 0: return False return True |
6 BraveRBT 2015 年 10 月 10 日 不好意思 <pre> def test_prime(x): if x <= 1: return False if x == 2: return True for i in range(2,x): if x % i == 0: return False return True </pre> |
7 BraveRBT 2015 年 10 月 10 日 没搞懂 V2EX 的回复格式,哪位指导一下 Thanks |
10 twor2 2015 年 10 月 10 日 |
11 billgreen1 2015 年 10 月 10 日 via iPhone 看看各种筛法吧 |
12 Arnie97 2015 年 10 月 10 日 新手大概不知道 list comprehension ? (x > 1) and all(x % i for i in range(2, x)) |
15 theohateonion OP 谢谢各位啦。我找到问题了~ |