猜数字游戏(随机数和Scannner的应用),
分享于 点击 1557 次 点评:176
猜数字游戏(随机数和Scannner的应用),
在指定范围内生成一个随机数作为目标值,用户对目标值进行猜测。
import java.util.Random; // 随机数 import java.util.Scanner; // 获取用户输入 public class Example { public static void main(String[] args) { Random rand = new Random(); Scanner in = new Scanner(System.in); // in 为一个变量 // 是否开始游戏 boolean isPlay = true; // 设置游玩次数 int count = 7; // 设置已玩次数 int havePlay = 0; // 设置随机数边界值 (这里也可以由用户自行输入) int min = 10; int max = 90; // 指定范围[min,max]随机数公式:Random.nextInt(max-min+1)+min; int randNum = rand.nextInt(max-min+1)+min; // 生成目标值在(min,max)双开区间 int goal = randNum; if (randNum == min) { goal += 1; }else if (randNum == max) { goal -= 1; } // 逻辑部分 while(isPlay) { if (havePlay==0) { // 首次游玩时给出范围 System.out.println("指定范围为:(" + min + ", " + max + "),输入负数可退出游戏。"); } System.out.println("请输入你的猜想:"); int guessNum = in.nextInt(); // 读入猜测数字 count--; // 每猜一次,猜测机会减少一次 havePlay++; // 每猜一次,已玩次数增加一次 // 游戏规则:1 输入负数,退出游戏。 2 猜中答案,跳出循环,游戏结束。3 猜测数字和目标值的关系对比 if (guessNum < 0) { System.out.println("玩家选择退出游戏。"); isPlay = !isPlay; } else if (guessNum == goal) { System.out.println("恭喜您用了" + havePlay + "次猜中了答案!答案为" + goal + "。游戏结束~"); break; } else if (guessNum > goal && count > 0) { System.out.println("比目标值大了哦~您还剩" + count + "次机会。"); } else if (guessNum < goal && count > 0) { System.out.println("比目标值小了哦~您还剩" + count + "次机会。"); } else if (count <= 0) { System.out.println("您的机会已经用尽,正确答案为:" + goal); break; } } } }
(运气比较好,两次就猜中了。。。)
游戏改良:在这个程序中,我们还可以规定:1. 随机数边界值;2. 游玩的次数。
相关文章
- 暂无相关文章
用户点评