质数怎么判断 ?
![](/wp-content/uploads/images/2023/03/04/a1907fa6-df39-4508-ac75-3df593af2a6c_dehwpy3anx4.jpg)
题:判断2017是质数还是合数?
分析:如果判断一个比较小的正整数是不是质数比较容易,我们通常只需要用2,3,5,7,11,13这些质数去除这个数,如果都不能整除,则该数是质数,如果其中某一个数能够整除它,则是合数。
比如,143,因为143÷11=13,所以143不是质数,是合数;
再比如,157,因为157都不能被2,3,5,7,11整除,所以157是质数。
但2017是一个不大不小的数,如果仅检验出它不能被2,3,5,7,11,13这些连续的质数整除,我们是不能判断它就是质数的。因为它有可能被大一点的质数整除。
究竟要检验到能否被多大质数整除才能判断是否为质数呢?
假设所判断的整数为N,
当N<2×3时,如果N不是2的倍数,则N是质数;
当N<3×5时,如果N不是2或3的倍数,则N是质数;
当N<5×7时,如果N不是2或3或5的倍数,则N是质数;
当N<7×11时,如果N不是2或3或5或7的倍数,则N是质数;
当N<11×13时,如果N不是2或3或5或7或11的倍数,则N是质数;
一般地,当N<a×b(a,b为连续质数,且a<b)时,如果N不是2或3或5,…或a这些连续质数的倍数,则N是质数;
因此,判断一个较大的整数N是不是质数,其做法是:找到两个连续的质数a,b(a<b),使得N最接近于ab,且N<ab,然后一一验证N是否能被所有小于a的质数整除即可。
对于2017来说,因为2017<43×47,
而2017都不能被43,41,37,31,29,23,19,17,13,11,7,5,3,2整除,
所以2017是质数。
练习:判断下列各数是不是质数?
(1)1999(质数)
(2)2021(合数)
(3)2179;(质数)