输入输出与随机数_猜数字游戏
问题描述
猜数字游戏,其游戏规则为:程序内自动生成一个 1 到 100 之间的数字作为猜测的结果,由用户猜测此数字。用户每猜测一次,由系统提示猜测结果:大了、小了或者猜对了。玩家最多猜5次,猜对结果,则提示You Win
,没猜对则提示Game Over
。用户可以提前退出游戏,即,游戏过程中,如果用户录入数字0,则游戏终止并提示放弃游戏。
要求:
- 创建Game类,在Game类中创建私有成员变量num。
- 在Game类中创建构造方法,并在构造方法中使用随机数类为num赋值。
- 在Game类中创建play方法,在方法中使用循环进行大,小,猜对的判断。输出并返回相关的提示信息。
- 创建Test类,在Test类中添加main入口方法,在方法中实例化Game类,并调用play方法进行游戏。
模拟输入输出结果如下:
50
小了
75
大了
62
小了
70
大了
65
猜对了
You Win
参考代码
Game.java
import java.util.Random;
import java.util.Scanner;
public class Game {
private int num;
public Game() {
Random random = new Random();
num = random.nextInt(100) + 1; // nextInt(100)生成0到99的随机数,+1后范围是1到100
}
public void play() {
Scanner sc = new Scanner(System.in);
for (int i = 0; i < 5; ++i) {
int x = sc.nextInt();
if (x == 0) {
System.out.println("你放弃了游戏");
return;
} else if (x == num) {
System.out.println("You Win");
return;
} else if (x > num) {
System.out.println("大了");
} else {
System.out.println("小了");
}
}
System.out.println("Game Over");
System.out.println(num);
}
}
Test.java
public class Test {
public static void main(String[] args) {
new Game().play();
}
}
输出:
50
大了
25
大了
12
小了
20
大了
18
大了
Game Over