问题描述
||
解决方法
如果
a
不是素数,则它至少具有两个适当的除数,并且其中之一必须小于平方根(或均是平方根)。如果b
达到sqrt(a)+1
,那么then0ѭ必须是素数。因此,如果b
达到a - 1
,您可以肯定它是素数。您也可以用if a - 3 == b
或a / 2
替换它(但是对于较小的素数可能不起作用)。
, 它似乎为我工作;将65535
更改为1024
并删除\" is prime\"
部分后(因此我可以将结果直接输入factor(1)
),输出如下所示:
$ ./prime.py | xargs -n1 factor > /tmp/list ; wc -l list
170 list
$ head list
5: 5
7: 7
11: 11
13: 13
17: 17
19: 19
23: 23
29: 29
31: 31
37: 37
您确定正确地复制粘贴了吗?我发现单行缩进的阅读很糟糕,也许您复印错了格式?