public class Test {
//方法一:通过数组
// public static void main(String[] args) {
// int[] primes = new int[50];
// primes[0] = 2;
// int cnt = 1;
// MAIN_LOOP:
// for(int i = 3;cnt<50;i++)
// {
// for(int j=0;j<cnt;j++)
// {
// if(i % primes[j] == 0)
// {
// continue MAIN_LOOP;
// }
// }
// primes[cnt++] = i;
// }
// for (int i : primes) {
// System.out.print(i+" ");
// }
// }
//第二种:通过调用函数
// public static void main(String[] args) {
// Test test = new Test();
// test.judg();
// }
//
// private void judg()
// {
// int k=0;
// for(int i = 0;k<50;i++)
// {
// if(isPrimes(i))
// {
// k++;
// System.out.println(i+" ");
// }
// }
// }
// private static boolean isPrimes(int n)
// {
// for(int i=2;i<=Math.sqrt(n);i++)
// {
// if(n%i==0)
// {
// return false;
// }
// }
// return true;
// }
// }
//方法三:构造素数表
public static void main(String[] args) {
boolean[] primes = new boolean[50];
for(int i=0;i<primes.length;i++)
{
primes[i]=true;
}
for(int i=2;i<primes.length;i++)
{
if(primes[i])
{
for(int k =2;i*k<primes.length;k++)
{
primes[i*k]=false;
}
}
}
for(int i=0;i<primes.length;i++)
{
if(primes[i])
{
System.out.print(i+" ");
}
}
}
}
计算前50个素数
最新推荐文章于 2023-07-27 10:16:51 发布