ShawnZL / Prime_Number

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

这是一个用于判断一个整数 n 是否为质数的函数。函数名为 IsPrime,接收一个整数 n 作为参数,返回一个布尔值表示是否为质数。

函数中的注释已经非常详细地解释了每个部分的作用,我会逐步解释函数的实现:

  1. 首先,函数检查 n 是否小于等于 1,如果是,则直接返回 false,因为质数定义为大于 1 的正整数。

  2. 接着,函数检查 n 是否为偶数。如果 n 是偶数,而且不等于 2,则说明 n 不是质数,因为质数中只有 2 是唯一的偶数质数。因此,如果 n 是偶数,直接返回 false

  3. 然后,函数处理 n 为奇数的情况,因为在之前的步骤中,已经排除了小于等于 1 和偶数的情况。

  4. 函数使用一个循环来尝试用从 3 开始的奇数 i 来除以 n。在每次循环中,首先判断 i 是否大于 n/i,如果大于,则说明已经尝试了所有可能的因子,因为 in/i 是成对出现的,而且 i 是递增的奇数。因此,如果 i > n/i,则跳出循环,不再继续尝试其他因子。

  5. 在循环中,如果发现 n 能够被 i 整除(即 n % i == 0),则说明 n 不是质数,直接返回 false

  6. 如果在循环结束时都没有找到能够整除 n 的因子,则说明 n 是质数,返回 true

总结:该函数根据质数的定义,使用简单的判断逻辑和循环,高效地判断一个整数是否为质数。在找到一个能够整除 n 的因子时,立即返回 false,避免不必要的计算,提高了判断质数的效率。

About


Languages

Language:C++ 41.2%Language:C 40.4%Language:CMake 18.4%