c++

c++怎么判断一个数是否为素数

小亿
248
2024-01-13 00:00:27
栏目: 编程语言

要判断一个数是否为素数,可以使用以下方法:

#include <iostream>
#include <cmath>

bool isPrime(int num) {
    if (num <= 1) {
        return false;
    }

    int sqrt_num = sqrt(num);
    for (int i = 2; i <= sqrt_num; i++) {
        if (num % i == 0) {
            return false;
        }
    }

    return true;
}

int main() {
    int num;
    std::cout << "请输入一个整数:";
    std::cin >> num;

    if (isPrime(num)) {
        std::cout << num << "是素数" << std::endl;
    } else {
        std::cout << num << "不是素数" << std::endl;
    }

    return 0;
}

在上述代码中,我们定义了一个isPrime函数,该函数接受一个整数作为参数,并返回一个布尔值,表示该整数是否为素数。函数内部使用了一个循环,从2开始一直到该数的平方根,判断是否有能整除该数的因子,如果有,则该数不是素数。

main函数中,我们从用户输入获取一个整数,然后调用isPrime函数判断该数是否为素数,并输出结果。

0
看了该问题的人还看了