键盘录入一个整数,判断一个数字是否为素数

  素数指的是只能被1和它本身整除的自然数,即大于1且除了1和它本身以外没有其他因数的自然数。例如,2、3、5、7、11等都是素数,4、6、9等都不是素数。  

import java.util.Scanner;

public class Demo06 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);//创建键盘录入对象
        System.out.println("请输入一个大于2的整数:");//提示输入整数范围
        int i = sc.nextInt();//键盘输入整数
        boolean flag = true;//标记判断是否为素数
        for (int j = 2; j <= i - 1; j++) {//遍历2-->(i-1)的整数
            if (i % j == 0) {//判断是否能被2-->(i-1)的整数整除,如果能被整除,执行此if内容
                flag = false;
                System.out.println(i + "不是一个素数");
                break;
            }
        }
        if (flag) {//如果不能被整除,执行此if内容
            System.out.println(i + "是一个素数");
        }

    }
}

程序执行,在控制台输出效果:

请输入一个大于2的整数
11
11是一个素数  

思路:判断键盘录入的数字能否被[2,键盘录入的数字-1]范围中任意一个数字整除,如果有,则代表这个数字不是素数,反之,是素数。
1.先定义一个布尔变量flag。用来标记这个这个变量是否为素数。默认为赋值为true,假设这个变量是素数
2.使用循环,获取2到这个数字-1的范围的数字
3.判断键盘输入的值 % 当前数字的。结果如果为0,则代表键盘输入的数字是当前数字的倍数。则当前键盘录入的数字不是素数。设置flag为false。同时结束循环
4.循环之外, 判断flag的值,如果是为true,则代表键盘输入的数字是素数,反之,不是素数    

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值