Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c++如何判断素数

作者:傲世,小狂徒   发布日期:2025-07-12   浏览:63

#include <iostream>
#include <cmath>

// 判断一个数是否为素数的函数
bool isPrime(int num) {
    // 处理小于2的情况
    if (num <= 1) {
        return false;
    }
    // 2和3是素数
    if (num == 2 || num == 3) {
        return true;
    }
    // 排除偶数和能被3整除的数
    if (num % 2 == 0 || num % 3 == 0) {
        return false;
    }
    // 检查从5开始,步长为6的数(即5, 11, 17, ... 和 7, 13, 19, ...)
    for (int i = 5; i * i <= num; i += 6) {
        if (num % i == 0 || num % (i + 2) == 0) {
            return false;
        }
    }
    return true;
}

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

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

    return 0;
}

解释说明:

  1. isPrime 函数:这是判断一个整数是否为素数的核心函数。

    • 首先处理小于等于1的情况,这些都不是素数。
    • 然后处理2和3这两个特殊情况,它们是素数。
    • 接着排除所有偶数和能被3整除的数。
    • 最后使用一个优化的循环,检查从5开始的数,步长为6(即5, 11, 17, ... 和 7, 13, 19, ...),因为所有素数都可以表示为6k±1的形式(除了2和3)。
  2. main 函数:这是程序的入口点。

    • 用户输入一个整数。
    • 调用 isPrime 函数判断该数是否为素数,并输出相应的结果。

通过这种方式,程序可以高效地判断一个数是否为素数。

上一篇:c++ 获取系统时间

下一篇:c++ 注释

大家都在看

c++闭包

c++单引号和双引号的区别

c++ 注释

c++如何判断素数

c++ 获取系统时间

c++进制转换函数

c++ tcp

c++ gcd函数

c++ cli

c++ 树

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站