猜数字游戏优化版1.1

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

public class Main {
  public static void main(String[] args) {
      System.out.println("\n"+"浅哥要饭饭2023-11-25优化版1.1"+"\n");
    System.out.println("<<<<<猜 数 字 游 戏>>>>>" + "\n" +"\n" +"<<  例如: (开始数字) 1~100 (结束数字)  >>>"+"\n");
    Scanner sr = new Scanner(System.in);
    String dayu = "大了";
    String xiaoyu = "小了";

    // 接收用户想生成的随机数范围
    System.out.println("设置:开始数字");
    int shuijishu1 = sr.nextInt();
    System.out.println("设置:结束数字");
    int shuijishu2 = sr.nextInt();
    /// 调用随机数方法,生成随机数
    Random rd = new Random();
    int shuijishujg = rd.nextInt((shuijishu2 - shuijishu1) + 1) + shuijishu1;
    int fanwei1 = shuijishu1; // 给范围初始值
    int fanwei2 = shuijishu2; // 给范围初始值
    System.out.println("随机数是" + shuijishujg);
    System.out.println("你设置的范围:" + fanwei1 + " ~ " + fanwei2);
    while (true) {
      String dxjeiguo = "~~~~~~~~~~~~~~~~~~~~~~~~";
      System.out.println("请输入你猜的数字:");
      int yonghushuzi = sr.nextInt();
      // 判断用户输入的结果,是不是生成范围内
      if (yonghushuzi > shuijishu2
          | yonghushuzi < shuijishu1
          | yonghushuzi < fanwei1
          | yonghushuzi > fanwei2) {
        System.out.println("违规输入,请重新输入");
      } else { // 用户输入的数据和随机数做比较,并判断大了还是小了
        if (yonghushuzi > shuijishujg) {
          dxjeiguo = dayu;
        } else if (yonghushuzi < shuijishujg) {
          dxjeiguo = xiaoyu;
        }
        ;
        System.out.println(dxjeiguo);
        // 判断大小并赋值,缩小范围
        if (dxjeiguo == "大了") {
          fanwei2 = yonghushuzi - 1;
        } else if (dxjeiguo == "小了") {
          fanwei1 = yonghushuzi + 1;
        }
      }
      ;
      // 跳出循环判断
      if (yonghushuzi == shuijishujg) {
        System.out.println("\n"+"<<<恭喜答对了>>>");
        System.out.println("答案是:"+shuijishujg);
        break;
      } else {
        // 每一次循环打印出用户猜数字的范围
        System.out.println("范围是:" + fanwei1 + "到" + fanwei2);
      }
      ;
    }
  }
}
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值