素数

简介:  没啥好说的,求质数的话,有几种方法,一种是筛。另外一种是质数判定。筛的话,就是用一个bool数组,每次把倍数设置上,大概这样: [cpp] view plaincopy for (i = 2; i
 没啥好说的,求质数的话,有几种方法,一种是筛。另外一种是质数判定。筛的话,就是用一个bool数组,每次把倍数设置上,大概这样:
[cpp]  view plain copy
  1. for (i = 2; i <= n; ++i) {  
  2.       if (!mark[i]) { //是质数  
  3.              for (j = i * i; j <= n; j += i) {  
  4.                   mark[j] = true//合数  
  5.          }  

如果质数判定的话,暴力的方法可以判定,这题范围那么小,就暴力吧。当然也可以把sqrt(n)的质数表打出来,试图分解质因数。暴力的判定方法,大概这样:

[cpp]  view plain copy
  1. bool isPrime(int n) {  
  2.   
  3. int i;  
  4. for (i = 2; i * i <= n; ++i) {  
  5.        if (n % i == 0) { //合数  
  6.           return false;  
  7.        }  
  8. }  
  9. return true;  
  10. }  
目录
相关文章
|
1月前
素数
素数
27 0
|
1月前
|
Java C++
筛法求质数
筛法求质数
36 0
|
1月前
判断一个素数能被几个9整除
判断一个素数能被几个9整除。
39 1
|
10月前
wustojc5004素数
wustojc5004素数
34 0
|
机器学习/深度学习 C语言
【C素数】素数(质数)和分解质因数
【C素数】素数(质数)和分解质因数
97 0
【C素数】素数(质数)和分解质因数
输出100以内的素数(质数)
输出100以内的素数(质数)
115 0
求自定义范围内的素数(质数)
判定数字是质数需要循环判断 因此需要定义(flag)用于记录循环的结果 结果如图
77 0
求自定义范围内的素数(质数)
求100以内质数或者更多
求100以内质数或者更多
77 0
|
算法 C++
C/C++实现回文质数(超详解)
题目链接 题目描述 输入样例 题解部分 完整代码 未完待续 参考文章
C/C++实现回文质数(超详解)