Cod:
#include<stdio.h>
#include<stdlib.h>
unsigned long k,d,i,q=1,n=3,N; unsigned a[99988]; short flag=1;
int main()
{
FILE*f=fopen("prim.in","rb"); fscanf(f,"%lu",&k); fclose(f);
FILE*g=fopen("prim.out","wb");
if(k>1)
{
while(q<k)
{
flag=0;
for(d=3;d*d<=n&&!flag;d+=2)
if(n%d==0) flag=1;
if(flag==0)
{
q++;
a[q]=n;
}
n+=2;
}
N=n;
while(flag==0)
{
n+=2;
for(d=N;d*d<=n&&!flag;d+=2) if(n%d==0) flag=1;
if(flag==1) for(i=2;i<=k&&flag;i++) if(n%a[i]==0) flag=0;
}
fprintf(g,"%ld",n);
}
else fprintf(g,"%d",9);
fclose(g);
return 0;
}
