国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

c++素數篩選法

2020-01-26 14:07:07
字體:
來源:轉載
供稿:網友

素數(又稱質數):指在大于一的自然數中,只能被1和它自身整除的自然數;

素數篩選法是指一種非常規的素數判定方法,比較高效率;

原理:任何數的整數倍必定不是素數,大于二的偶數必定不是素數。

我們以找出100以內的素數為例,利用原理,我們可以首先排除偶數是素數,然后進一步判斷奇數

實現將偶數標記為0,素數標記為1;(也可以用一個bool數組將偶數標記為false,奇數標記為true)

下面是全部代碼

#include <iostream>#include <cmath>#define MAX 100 using namespace std;int main(){      //設置標記,將偶數標記為0       int prime[MAX+1];      for(int i=1;i<=MAX;i++)      {        if(i%2==0)        {          prime[i]=0;        }        else prime[i]=1;      }            for(int i=3;i<=sqrt(MAX);i++)      {        if(prime[i]==1)        {          for(int j=i+i;j<=MAX;j=j+i)          {              prime[j]=0;          }        }      }          cout<<"2"<<" ";      for(int i=3;i<=MAX;i++)      {        if(prime[i]==1)        cout<<i<<" ";      }  return 0;  } 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 台东市| 马尔康县| 梅州市| 防城港市| 尉犁县| 云霄县| 鹤壁市| 泸定县| 黎平县| 麻江县| 乐安县| 曲水县| 新巴尔虎左旗| 吴川市| 静安区| 广水市| 梁平县| 普安县| 罗平县| 凤山县| 云霄县| 新竹县| 大埔区| 从江县| 吉林市| 安多县| 泰顺县| 奉贤区| 泾源县| 新蔡县| 元氏县| 修水县| 南溪县| 沧源| 南陵县| 长岭县| 花莲市| 永仁县| 宁德市| 怀柔区| 会东县|