Java循环练习:从键盘输入一个数(大于3),计算这个数值以内的所有素数(质数)

Java循环练习:从键盘输入一个数(大于3),计算这个数值以内的所有素数(质数)

Richer Chen
2024-03-14 / 0 评论 / 20 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2024年03月14日,已超过198天没有更新,若内容或图片失效,请留言反馈。
本文共 181 个字数,平均阅读时长 ≈ 1分钟

练习题目

从键盘输入一个数(大于3),计算这个数值以内的所有素数(质数)
质数:只能被1和它本身整除的自然数。比如2,3,5,7,11,13,17,19,23...

code代码

import java.util.Scanner;

/*
循环练习:从键盘输入一个数(大于3),计算这个数值以内的所有素数(质数)
质数:只能被1和它本身整除的自然数。比如2,3,5,7,11,13,17,19,23...
 */
public class PrimeNumTest {
    public static void main(String[] args) {
        //定义键盘输入的数变量
        int input;

        //获取键盘输入的数据
        Scanner scanner = new Scanner(System.in);
        input = scanner.nextInt();

        //先输入2和3为质数
        System.out.print(input + "以内的质数有:");
        //计算素数
        //判断是否是质数
        boolean flag = true;
        for (int i = 2; i <= input; i++) {
            //为什么使用j=i/2+1,如果i不是质数,则至少有两个约数大于等于2与小于等于i/2之间,例如12,有2 6 3 4,15有3 5
//            for(int j = i - 1;j > 1;j--) {
            for (int j = i / 2; j > 1; j--) {
                if (i % j == 0) {
                    flag = false;
                }
            }
            if (flag) {
                System.out.print(" " + i);
            }
            //重置flag
            flag = true;
        }

        //关闭scanner资源
        scanner.close();
    }
}

运行效果

ltqq3i1b.png

1

打赏

海报

正在生成.....

评论 (0)

语录
取消