holyya.com
2025-09-05 00:24:29 Friday
登录
文章检索 我的文章 写文章
一行C++代码轻松判断素数
2023-06-23 14:54:19 深夜i     --     --
C++ 代码 素数 判断

素数是指只能被1和本身整除的正整数,例如2、3、5、7、11等等,而4、6、8、9等等都不是素数。判断一个数是否是素数一直是计算机编程中经常需要进行的一个操作。

在C++语言中,判断一个数是否是素数就可以用一行简洁的代码实现。这个代码使用了一个常用的算法——埃拉托斯特尼筛法(Sieve of Eratosthenes),可以有效地排除一些不是素数的数,从而提高判断的效率。

下面就是这个C++代码:


bool is_prime(int n){

  if(n<2) return false;

  for(int i=2; i*i<=n; i++)

    if(n%i==0) return false;

  return true;

}

这个代码使用了一个布尔函数(Boolean function)is_prime(即判断是否是素数的函数)来实现判断输入数n是否是素数的功能。接下来逐行解析这个函数的具体实现方法:

1.首先,使用if语句判断如果输入的数n小于2,即取值范围小于2,就直接返回false,因为1不是素数。

2.然后,使用for循环从2开始遍历到n的平方根,即i*i<=n,因为对于n的所有因子,一个大于sqrt(n)、一个小于sqrt(n),所以只需遍历到sqrt(n)即可。

3.在循环中,使用if语句判断如果n能够被i整除,即n%i==0,就返回false,因为n不是素数。

4.最后,如果n不能被任何i整除,则返回true,说明n是素数。

使用这个简单的一行代码,我们就可以轻松判断一个数是否为素数了。在实际编写程序时,只需把这个代码粘贴到主函数中,再根据具体的需求进行相应的调用即可。

总之,计算机编程中的一些常用算法,如埃拉托斯特尼筛法,可以通过一些简单的代码来实现。对于初学者来说,掌握这些算法和技巧,可以为自己的编程能力提升打下坚实的基础。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复