计算机随机产生一个【1,100】之间的数字

(1)每次根据玩家的输入与随机数比较后,用户输入数值过大提示玩家too high,用户输入数值过小提示玩家too small,用户猜中提示bingo;

(2)一次游戏终止条件:猜中或超过5次未猜中。猜中输出“You win!”,未猜中输出“You lose!”;

(3)每次游戏终止时,提示用户“是否继续游戏?(Y/N)”,“是”则开始新游戏,“否”则退出游戏;

(4)用户输入0,则输出“用户终止游戏”终止游戏并退出;

(5)设计类中的静态方法(static方法),实现上述功能,方法数量无限制。

import java.util.Scanner;
public static void main(String[] args) {
		int guessNumber = -1;
		while (true) {
			int number = (int) Math.floor(Math.random() * 100);// 生成0-100的随机数
			if (number != 0) {
				@SuppressWarnings("resource")
				Scanner sc = new Scanner(System.in);
				System.out.println("是否开始游戏(Y/N)");
				String input = sc.nextLine();
				GuessContinue(input, number, guessNumber);
			}
		}
	}

	public static void GuessContinue(String input, int number, int guessNumber) {

		if (input.equals("Y")) {
			System.out.println("开始游戏!");
			for (int i = 0; i <= 5;) {
				try {
					@SuppressWarnings("resource")
					Scanner sc2 = new Scanner(System.in);// 接收数据
					System.out.println("\n请输入你要猜的数据(1-100):");
					guessNumber = sc2.nextInt();
				} catch (Exception e) {
				}
				if (guessNumber == 0) {
					System.out.println("用户终止游戏!");
					System.exit(0);
				} else if (guessNumber <= 100 & guessNumber > 0) {
					if (guessNumber == number) {
						System.out.println("You Win!");
						break;
					} else {
						GuessNum(guessNumber, i, number);
						i++;
						guessNumber = -1;
					}
					if (i == 5) {
						System.out.println("You lose!\n");
						break;
					}
				} else {
					System.out.println("请输入1-100的整数数据!");
				}
			}
		} else if (input.equals("N")) {
			System.out.println("退出游戏!");
			System.exit(0);
		} else {
			System.out.println("请输入正确的符号!(Y/N)\n");
		}
	}

	public static void GuessNum(int guessNumber, int i, int number) {
		if (guessNumber > number) {
			System.out.println("您猜的数字" + guessNumber + "\ttoo hight" + ",您还剩" + (4 - i) + "次机会");
		} else if (guessNumber < number) {
			System.out.println("您猜的数字" + guessNumber + "\tto small" + ",您还剩" + (4 - i) + "次机会");
		}
	}
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐