国产探花免费观看_亚洲丰满少妇自慰呻吟_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;  } 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宁夏| 卢湾区| 汉阴县| 集贤县| 昌宁县| 安新县| 岱山县| 巴彦县| 甘洛县| 柏乡县| 资中县| 丹巴县| 云阳县| 洛南县| 民县| 辽宁省| 西城区| 临城县| 德格县| 扬州市| 榆中县| 鄢陵县| 黄山市| 靖西县| 溧阳市| 兴宁市| 禄劝| 吴忠市| 锡林浩特市| 威海市| 永德县| 白银市| 汾西县| 榆社县| 临猗县| 宣恩县| 乐都县| 逊克县| 上高县| 进贤县| 饶平县|