常用函数库——BOOL函数

来源:互联网 发布:简单hash算法 编辑:程序博客网 时间:2024/06/11 18:36

//判断一个数是否为质数

Returns true if n is a prime number.

bool IsPrime(int n){    // Trivial case 1: small numbers    if (n <= 1) return false;    // Trivial case 2: even numbers    if (n % 2 == 0) return n == 2;    // Now, we have that n is odd and n >= 3.    // Try to divide n by every odd number i, starting from 3    for (int i = 3; ; i += 2) {        // We only have to try i up to the squre root of n        if (i > n/i) break;        // Now, we have i <= n/i < n.        // If n is divisible by i, n is not prime.        if (n % i == 0) return false;    }    // n has no integer factor in the range (1, n), and thus is prime.    return true;}





0 0
原创粉丝点击