c++编写的孪生素数算法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
//1-1000的孪生素数求解
//by:王琨
//date:2011-9-29
#include
#include
void main()
{
int i,j,aCount,OldNum,Flag;
aCount=0;
OldNum=0;
for(i=1;i<=1000;i++)
{
//判断i是否为素数
Flag=0;
for(j=2;j<=sqrt(i);j++)
{
if(i%j==0)
{
Flag=1;
break;
}
}
//如果i为素数
if(Flag==0)
{
if(OldNum!=0)
{
//判断OldNUm(表示上一个素数)和当前素数i的差是否为2
if(i-OldNum==2)
{
printf("%d %d\n",OldNum,i);
aCount++;
}
}
OldNum=i; //保存当前素数,以便于下一轮使用
}
}
printf("Count=%d\n",aCount);
}