101到200素数1.0版本和2.0版本和素数

素数的概念:素数(Prime Number)是指只能被1和自身整除的大于1的自然数。换句话说,素数只有两个正因数:1和它本身。

A1.0版本1.思路是输入一个数,内存循环判断是否存在一个数可以让当前数整除,有则跳出没有就继续执行,直到内存循环到2为止,代码如下:

    public static void suShu() {
        a://标志,当执行内层continue时,continue直接跳出到外层循环
        for (int i = 101; i <= 200; i++) {
            for (int j = i-1; j >1; j--) {
                if (i % j == 0) {
                    continue a;//如果存在可整除的数跳过当前循环到标志位a的地方
                }
            }
            System.out.print(i+" ");
        }
    }

B.

  1. 主函数 (main 方法):调用 printPrimesInRange 方法来打印101到200之间的所有素数。
  2. printPrimesInRange 方法
    • 参数 start 和 end 定义了要检查的范围。
    • 使用 for 循环遍历从 start 到 end 的所有整数。
    • 对于每个数,调用 isPrime 方法检查其是否为素数。
    • 如果是素数,则打印该数。
  3. isPrime 方法:与之前的解释相同,用于检查一个给定的数是否为素数。
    /**
     * 打印出指定范围内的所有素数。
     *
     * @param start 范围的起始值
     * @param end   范围的结束值
     */
    public static void printPrimesInRange(int start, int end) {
        for (int i = start; i <= end; i++) {
            if (isPrime(i)) {
                System.out.print(i+" ");
            }
        }
    }

    /**
     * 检查给定的数是否为素数。
     *
     * @param num 要检查的数
     * @return 如果是素数返回 true,否则返回 false
     */
    private static boolean isPrime(int num) {
        if (num <= 1) {
            return false; // 小于等于1的数不是素数
        }
        for (int i = 2; i <= Math.sqrt(num); i++) {
            if (num % i == 0) {
                return false; // 找到了除了1和本身以外的因数
            }
        }
        return true; // 没有找到除了1和本身以外的因数
    }

结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值