首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

为啥求1~n之间的素数,只需要进行到除数为根号n就可以了

2013-08-23 
为什么求1~n之间的素数,只需要进行到除数为根号n就可以了?为什么求1~n之间的素数,只需要进行到除数为根号n

为什么求1~n之间的素数,只需要进行到除数为根号n就可以了?
为什么求1~n之间的素数,只需要进行到除数为根号n就可以了?详细解释下,看谁解释的更清楚!
[解决办法]
假如n是composite,then  n = a*b

不妨设a <= b,所以有 a*a <= a*b = n,两面开平方,就有 a <= sqrt(n) 了

所以 trivial division 算法只需要计算到根号n就可以了
[解决办法]
n=a*b
如果a<n^(1/2)那么肯定有b>n^(1/2)

[解决办法]
Finding prime numbers - Kenneth Haugland
Different schemas for finding prime numbers explained with code
http://www.codeproject.com/Article.aspx?tag=198374988322054872&

热点排行