欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

求1到100之间的质数(素数)?

程序员文章站 2022-03-01 17:47:20
...
  • 求1到100之间的质数(素数)
  • 用到知识:双层for循环,if判断
  • 常识:2是最小的质数,质数的定义:除1和本身没有其他因数的数
  • 思路:如何判断5是不是质数,用5分别对2,3,4取余,发现没有余数,说明5没有其他因数,所以5是质数
public class PrimeNumber {
    public static void main(String[] args) {
        System.out.println("1-100之间的质数为:");
        boolean flag=true;  //设置布尔类型flag,作为标记。
        for (int i = 2; i <=100; i++) {  //2是最小的质数
            for (int j = 2; j < i; j++) { //去掉1和它本身
                if (i%j==0){ //如果i%j==0,说明i还有其他因数
                    flag=false;
                    break;  //所以直接break跳出内层循环
                }
            }
            if (flag){  //如果flag==true,说明i%j==0不成立,说明i没有其他因数,故输出i
                System.out.print(i+"\t");  
            }else {
                flag=true; //当flag==false,说明已跳出内层循环,将flag再设置true,继续外层循环
            }
        }
    }
}

运行结果:
求1到100之间的质数(素数)?

相关标签: java