java写一个方法,用以判断一个整数是否是质数. 然后在主方法写输出1-100之间的所有质数.

2024-10-30 09:44:41
推荐回答(2个)
回答1:

public class $ {
    public static void main(String[] args) {

        for (int i = 1; i <= 100; i++) {
            if (isZhishu(i)) {
                System.out.println(i);
            }
        }
    }

    private static boolean isZhishu(int num) {
        if (num == 1) {
            return false;
        }
        int sqrt = (int) Math.sqrt(num) + 1;
        for (int i = 2; i < sqrt; i++) {
            if (num % i == 0) {
                return false;
            }
        }
        return true;
    }
}

回答2:

一楼函数里面的算法是最优解法。但是外面明显不用循环一百次。
system.out.println(2);
for(int i = 3;i<100;i+=2) 这样写面试官保证不会说啥