Pagini recente » Cod sursa (job #96146) | Cod sursa (job #1096400) | Cod sursa (job #1642847) | Cod sursa (job #2759) | Cod sursa (job #2507159)
#include <fstream>
using namespace std;
#define max 999999
bool c[999999];
ifstream fin("prim.in");
ofstream fout("prim.out");
void ciur(int n)
{ c[0]=c[1]=c[2]=1;
n-=1;
for(int i=3;n>0;i+=2)
{ for(int j=1;j*i<=max;j++) c[i*j]=1;
}
}
bool isPrim(int a)
{ if(a<2) return false;
if(a==2) return true;
if(a>2&&a%2==0) return false;
for(int i=3;i*i<a;i+=2) if(a%i==0) return false;
return true;
}
int main()
{ int n;
fin>>n;
ciur(n);
for(int i=n;i<=max;i++)
{ if(c[i]==0) {if(!isPrim(i)) {fout<<i;break;}
else {fout<<i+1;break;}
}
}
}