java 如何输出1到100间的质数

Python011

java 如何输出1到100间的质数,第1张

public class Test{

static int N = 100

public static void main(String[] args){

boolean[] a = new boolean[100]

for(int i=0i<N++i)a[i]=true

for(int i=2i<N++i)

for(int j=ii*j<N++j)

a[i*j]=false

for(int i=2i<N++i)

if(a[i]) System.out.print(" " + i)

System.out.println()

}

}

所谓质数就是只能被1和它本身整除的数,那么对于某一个数a,可以试着让它除以a-1......2,如果有任意一次除法的余数为零,这个数a就不是质数。

public class PrimeNumber {

/**

* 质数,只能被1和自身整除

* @param args

*/

public static void main(String[] args) {

for (int i = 100i <= 200 i++) {

/*

标识位:true表示质数,false表示非质数

假定每个数一开始都是质数

*/

boolean flag = true

for (int j = 2j <i j++) {

/*

从2开始除,只要余数为0就表示这个数能被其他数整除

然后将标识位设置为false,然后跳出内层循环执行

*/

if (i % j == 0){

flag = false

break

}

}

/*

根据标识位来判定是否是质数,是的话就输出

*/

if(flag){

System.out.println("质数:" + i)

}

}

}

}