猜数字测运气游戏
1.游戏规则
系统自动生成一个随机整数(1- 100),然后由玩家输入一个猜测的数字,如果输入数字比生成数大,则会提示“猜大了”;如果输入数字比生成数小,则会提示“猜小了”;如果输入数字与生成数一样,则提示“猜对了”。玩家一共有5次机会,5次不中游戏结束。
2.生成随机数
在 Random(填入数字 X) ,数字若为10 则范围在0~9中随机出现(即头默认为0 尾默认为X-1) 游戏中是1~100,则 Random(100)从0~99 Random(100) + 1 即可 注意:使用Random(数字)后,生成了随机种子。详细介绍可以看看这位大佬所写 关于随机种子seed()的一点理解_seed = 1-CSDN博客
import java.util.Random;//加载头文件
Random r = new Random();//创建对象
int num = r.nextInt(100) + 1; //随机种子 生成随机数 Random(100)的范围 0~99 + 1 = 1~100
3.玩家猜数
Random r = new Random();
Scanner sc = new Scanner(System.in);
System.out.println("来,看看你今天的运气如何!");
System.out.println("嘿嘿,请输入一个数字");
int num = r.nextInt(100) + 1;
int i = 1;
while(i > 0){ // java里 while(只能填boolean 型)
int guess = sc.nextInt();
因为猜测是需要不断进行,直到猜对停止,所以需要用死循环,一旦猜中,马上break 退出循环。 因为我设计的是5次机会来猜,所以需要记录 i 的值,退出循环后用switch(i) 来选择是第几次猜数。
4.判断猜测正误
while(i > 0){ // java里 while(只能填boolean 型)
int guess = sc.nextInt();
if(num == guess){
System.out.println("恭喜大哥");
break;
}
else if( num > guess){ //java里 是else if
System.out.println("老弟,猜小了,没事下一把继续");
}
else{
System.out.println("老弟,猜大了,没事下一把继续");
}
System.out.println("这是第"+i+"把");
System.out.println("你还有"+(5-i)+"次机会");
i++;
if(i == 6){
System.out.println("游戏结束,不多说了,老弟,自求多福吧");
break;
}
}
while循环里:猜中即break;猜错提示你是猜大或猜小 提醒你这是第几把 你还有几次机会 并记录你猜的次数 i , 如果 i == 6,break;( 即在第 五次循时, 仍未猜中 宣告结束游戏)
5. 通过switch语句
输入 i 值 来代表你第几次猜中 不同的次数 分别代表着你今天的运气如何 i = 1,代表着你第一次就猜中了 非常厉害,可以试试买彩票。i = 2... 以此类推。
switch(i){
case 1:
System.out.println("我靠!牛的很,这运气不买彩票可惜了");
break;
case 2:
System.out.println("可以啊,你今天运气好啊");
break;
case 3:
System.out.println("不错不错,运气不错");
break;
case 4:
System.out.println("运气不佳,今天小心点吧");
break;
case 5:
System.out.println("可千万提防点自己的人身安全嘞");
break;
6.完整代码
import java.util.Scanner;
import java.util.Random;
public class hello{
public static void main(String args[]){
Random r = new Random();
Scanner sc = new Scanner(System.in);
System.out.println("来,看看你今天的运气如何!");
System.out.println("嘿嘿,请输入一个数字");
int num = r.nextInt(100) + 1; //随机种子 头文件 Random 0~99 +1 = 1~100
int i = 1;
while(i > 0){ // java里 while(只能填boolean 型)
int guess = sc.nextInt();
if(num == guess){
System.out.println("恭喜大哥");
break;
}
else if( num > guess){ //java里 是else if
System.out.println("老弟,猜小了,没事下一把继续");
}
else{
System.out.println("老弟,猜大了,没事下一把继续");
}
System.out.println("这是第"+i+"把");
System.out.println("你还有"+(5-i)+"次机会");
i++;
if(i == 6){
System.out.println("游戏结束,不多说了,老弟,自求多福吧");
break;
}
}
switch(i){
case 1:
System.out.println("我靠!牛的很,这运气不买彩票可惜了");
break;
case 2:
System.out.println("可以啊,你今天运气好啊");
break;
case 3:
System.out.println("不错不错,运气不错");
break;
case 4:
System.out.println("运气不佳,今天小心点吧");
break;
case 5:
System.out.println("可千万提防点自己的人身安全嘞");
break;
}
}
}
7.实际运行结果
我使用的是 Notepad++编译的 来试试看你的运气如何吧!