循环综合练习

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

1.逢七过

 /*
        朋友聚会的时候可能会玩一个游戏:逢7过
        游戏规则:从任意一个数字开始报数,当你要报的数字是包含7或者是7的倍
        数时都要说过:过
        需求:使用程序在控制台打印出1-100之间的满足逢七必过规则的数据

        */
        
        Scanner sc = new Scanner(System.in);
        System.out.println("输入起始数");
        int start= sc.nextInt();
        System.out.println("输入终止数");
        int end= sc.nextInt();
        
        for (;start<=end;start++){
            if (start%7==0 || start%10==7 || start/10==7){
                System.out.println("过");
                continue;
            }
            System.out.println(start);
        }

2.求平方根

 /*
       需求:键盘录入一个大于等于2的整数x,计算并返回x的平方根。
            结果只保留整数部分,小数部分将被舍去。
        */
        Scanner sc = new Scanner(System.in);
        System.out.println("输入一个大于或等于2的整数:");
        int x= sc.nextInt(),i=0;

        // 自己写的原版
        if (x>=2){
            while (i*i<x){
                i++;
            }
            if (i*i==x){
                System.out.println(i+"是"+x+"平方根的整数部分");
            }else {
                System.out.println((i-1)+"是"+x+"平方根的整数部分");
            }
        }

        //视频讲解后的修改版
        if (x>=2){
            for (int j = 1;j * j <= x;j++){
                if (j * j == x){
                    System.out.println(j+"是"+x+"平方根的整数部分");
                    break;
                }else if(j * j > x){
                    System.out.println((j - 1)+"是"+x+"平方根的整数部分");
                    break;
                }
            }
        }else {
            System.out.println("请输入正确数据");
        }

3.求质数

 /*
      需求:键盘录入一个正整数x,判断该整数是否为一个质数。
        */

        Scanner sc = new Scanner(System.in);
        System.out.println("输入正整数:");
        int x= sc.nextInt();
        boolean flag = true;

        for (int i=2;i<x;i++){
            if (x%i==0){
                flag=false;
            }
        }
        if (flag){
            System.out.println(x+"是质数");
        }else {
            System.out.println(x+"不是质数");
        }

简化思路

    假设a*b=81,那么这两个数一定 一个大于等于平方根;一个小于等于平方根
    那么在其平方根的范围呢不能被整除,其原数一定是质数
    条件:   1、被除数起始为2
    	    2、被除数小于等于平方根
    	    3、被除数自增

4.猜数字小游戏

/*
      需求:程序自动生成一个1-100之间的随机数字,使用程序实现猜出这个数字是多少?
       */

       // Random r = new Random();
        //int number = r.nextInt(101);number的范围是0-100

        /*
       秘诀: 1.让这个范围的头尾都减去一个值,让这个值从0开始
             2.尾巴+1
             3.最终的结果再加上第一步得值
         */

        //1.生成随机数(此代码不能放入循环中,否则每一次都会产生一个新的随机数)
         Random r = new Random();
        int number = r.nextInt(100)+1;
        int count = 0 ;

        //2.猜这个数字是多少
        Scanner sc =new Scanner(System.in);


        //3.判断两个数字是否相同
        while (true){
            System.out.println("请输入你要猜的数:");
            int guessNumber = sc.nextInt();

            count++;
            if (count == 10){
                System.out.println("保底了");
                break;
            }


            if (guessNumber>number){
                System.out.println("猜大了");
            }else if (guessNumber>number) {
                System.out.println("猜小了");
            }else {
                System.out.println("哇!金色传说!");
                break;
            }
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值