猜数小游戏

任务6、猜数小游戏(单次版)

  • 游戏规则:程序产生一个[1, 100]之间的随机整数,用户输入整数进行猜测,如果猜对了,就结束游戏;如果猜错了,程序会提示你是猜高了还是猜低了,然后让你继续输入整数进行猜测。

(一)编程实现

  • 在net.lixin.p02.t06包里创建Task06类
    在这里插入图片描述
package net.lixin.p02.t06;

import java.util.Random;
import java.util.Scanner;

/**
 * 功能
 * 作者:李信
 * 日期:2022年04月14日
 */
public class Task06 {
    public static void main(String[] args) {
        //声明部分
        int target, x;
        Scanner sc=new Scanner(System.in);
        //产生猜测目标
        Random random=new Random();
        target = random.nextInt(100);



        while (true){
            //用户输入猜测数
            System.out.println("输入一歌[1,100]的整数");
            x=sc.nextInt();
            //判断用户是否猜测正确
            if (x>target) {
                System.out.println("朋友你猜高了,继续猜吧");
            }else if (x<target){
                System.out.println("朋友·你猜低了,继续猜吧");
            }else {
                break;//猜中了,跳出循环

            }
            //用户输入猜测的数
            System.out.println("输入你猜测的数");
            x=sc.nextInt();

        }
         System.out.println("恭喜你猜对了,游戏结束");
    }
}

  • 运行程序,查看结果
    在这里插入图片描述
  • 如果采用二分法来猜测,猜测次数最多不会超过l o g 2 100 ≈ 7

在这里插入图片描述

  • net.lixin.p02.t06包里创建Task06_
    在这里插入图片描述
package net.lixin.p02.t06;

import java.util.Random;
import java.util.Scanner;

/**
 * 功能
 * 作者:李信
 * 日期:2022年06月09日
 */
public class Task06_ {
    public static void main(String[] args) {
        // 声明部分
        int target, x;
        Scanner sc =new Scanner(System.in);

        // 产生猜测目标
        Random random = new Random();
        target = random.nextInt(100);

        while (true) {
            // 用户输入猜测的数
            System.out.print("输入一个[1, 100]的整数:");
            x = sc.nextInt();
            // 判断用户是否猜测正确
            if (x > target) {
                System.out.println("朋友,你猜高了~继续猜吧");
            } else if (x < target) {
                System.out.println("朋友,你猜低了~继续猜吧");
            } else {
                break; // 猜中了,跳出循环
            }
        }

        System.out.println("恭喜你猜对了,游戏结束!");
    }
}

  • 运行程序,查看结果
    在这里插入图片描述

(二)讲解知识点

  • 详细讲稿:Java学习笔记2.5.1 循环结构 - 条件循环
1、前测试条件循环 - while循环
(1)语法格式
初始条件
while (循环条件) {
     语句块
     break|continue;
     更新条件
}

执行情况
  • 首先判断循环条件是真还是假,如果是真的,执行循环体,然后再次判断循环条件。如果是真的,继续循环,直到循环条件变成假的。有一种特殊情况:如果第一次判断循环条件就不成立,那么一次循环也不执行。
2、后测试条件循环 - do…while循环
(1)语法格式
初始条件
do {
     语句块
     break|continue;
     更新条件
} while (循环条件);

  • 首先执行一次循环,然后判断循环条件,如果为真,继续循环,直到条件为假时结束循环。后测试当型循环,属于先上车后买票,无论如何都会执行一次循环。
3、随机类 - Random
  • 查看Random的方法
    在这里插入图片描述
  • 产生指定范围的随机整数[a, b]
Random random = new Random();
int x = a + random.nextInt(b - a);

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值