求素数
才疏学浅,资历欠佳,难免有误,望有心人批评指正。
求第 y 个素数
public class Sushu
{
public static void fun(int y)
{
int N=1000*1000*10;
int m=0;
int[] a=new int[N];
for (int i=2;i<N/2;i++)//筛法
{
if(a[i]==1)
continue;
//将不满足条件的数组位置 1
for (int k=2;k<=N/i ;k++ )
{
if (i*k<N)
a[i*k]=1;
}
}
//查找 第 x 个0所在位置的下标即为所求
for (int i=2;i<N ;i++ ) {
if (a[i]==0) {
m++;
if (m==y)
System.out.println(i+" ");
}
}
}
public static void main(String[] args)
{fun(100001); }
}