用c++语言函数编程找出1~100之间的所有孪生素数 在线等急
#include <iostream>
using namespace std;
int cnt ;
int arr[50] ;
char flag[50];
int is_prime(int x);
int main(int argc, char** argv)
{
memset(arr , 0x00, sizeof(arr)) ;
memset(flag, 0x00, sizeof(flag));
cnt = 0;
for (int i = 2; i < 100; i ++)
{
if (is_prime(i))
{
arr[cnt++] = i;
}
}
for (int i = 0; i < cnt-1; i ++)
{
if (arr[i]+2 == arr[i+1])
{
flag[i] = 0x01;
flag[i+1]= 0x01;
}
}
for (int i = 0; i < cnt; i ++)
{
if (flag[i]) printf("%d\n",arr[i]);
}
return 0;
}
int is_prime(int x)
{
for (int i = 2; i*i <= x; i ++)
{
if (x%i == 0) return 0;
}
return 1;
}
#include <iostream>
#include <cmath>
using namespace std;
bool prime(int m)
{
if(m==1) return false;
for(int i=2;i<=sqrt(m);i++)
if(m%i==0) return false;
return true;
}
int main()
{ int i=1;
while(i<=100)
{ if(prime(i) && prime(i+1))
cout<<i<<"\t"<<i+1<<endl;
i++;
}
return 0;
}