对代码的解释:判断一个素数,首先0和1不是素数、2是素数、能被2整除的不是素数,排除这些数后 然后对num进行开平方根,从3开始到这个平方根,每隔2判断一下,看看num能否被其整除,如果能就不是素数,否则,一直检查到最后都没有,那么这个数一定是素数。目前这个效率应该是最高的 bool isPrimeNum(int num) { if (num <= 2) { return num == 2; } if (num % 2 == 0) { return false; } int iSqrt = sqrt(num); for (int i = 3; i <= iSqrt; i+=2) { if (num % i == 0) { return false; } } return true; } |
判断一个数是否素数
最新推荐文章于 2023-08-31 15:44:53 发布