?? 篩選法優(yōu)化b.cpp
字號:
/* 素數(shù)篩選法B
崔恒
*/
#include <iostream.h>
#include <math.h>
#define n 10000000001
bool prime[n];
void main()
{
int i,j,x,q,k;
cout<<"優(yōu)化算法B,請輸入一個數(shù):";
cin>>x;
if (x%2==0) q=x/2-2;
else q=(x+1)/2-2;
for (i=0;i<=q;i++)
prime[i]=true;
for(i=0; 2*i+3<=sqrt(x); i++)
{
j=i*(2*i+6)+3;
k=(j-i)/(2*i+3);
if (prime[i])
while(j<=q)
{
prime[j]=false;
k++;
j=k*(2*i+3)+i;
}
}
cout<<" "<<x<<"內(nèi)的所有的素數(shù)為:"<<endl<<"2"<<endl;
k=1;
for(i=0;i<=q;i++)
{
if (prime[i])
{
cout<<i*2+3<<" ";
if(k%5 == 0) cout<<endl;
k++;
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -