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);
}
;
}
}
}