|
@@ -0,0 +1,85 @@
|
|
|
+package com.sf;
|
|
|
+
|
|
|
+import java.util.Scanner;
|
|
|
+
|
|
|
+/**
|
|
|
+ * @author guyanqing
|
|
|
+ */
|
|
|
+public class GuessNumber {
|
|
|
+ public static void main(String[] args) {
|
|
|
+ Scanner scanner = new Scanner(System.in);
|
|
|
+ int option = 0;//存放选项的
|
|
|
+ while (true) {
|
|
|
+ System.out.println("**********************************");
|
|
|
+ System.out.println(" 1----等级1:0-100");
|
|
|
+ System.out.println(" 2----等级2:0-1000");
|
|
|
+ System.out.println(" 3----等级3:0-10000");
|
|
|
+ System.out.println(" 4----等级4:0-100000");
|
|
|
+ System.out.println(" 0----退出");
|
|
|
+ System.out.println("**********************************");
|
|
|
+
|
|
|
+ System.out.println("请输入对应数字进行操作:");
|
|
|
+ option = scanner.nextInt();
|
|
|
+ if (option >= 0 && option <= 4) {
|
|
|
+ break;//选择正确
|
|
|
+ }
|
|
|
+ System.out.println("输入错误,请重新输入!");
|
|
|
+ }
|
|
|
+ if (option != 0) {
|
|
|
+ int range = 10;
|
|
|
+ for (int i = 1; i <= option; i++) {//输入了几就在10后面加几位
|
|
|
+ range *= 10;
|
|
|
+ }
|
|
|
+ //随机生成一个0-range的数
|
|
|
+ int rand = randNumber(0, range);
|
|
|
+ System.out.println(rand);
|
|
|
+ int count = 0;
|
|
|
+ while (true) {
|
|
|
+ System.out.println("请输入一个数字:");
|
|
|
+ int temp = scanner.nextInt();
|
|
|
+ count++;
|
|
|
+ if (judge(rand, temp) == 0) {
|
|
|
+ System.out.println("猜小了!");
|
|
|
+ } else if (judge(rand, temp) == 2) {
|
|
|
+ System.out.println("猜大了!");
|
|
|
+ }
|
|
|
+ if (judge(rand, temp) == 1) {
|
|
|
+ System.out.println("恭喜你第" + count + "次答对,游戏结束!");
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ System.out.println("程序退出!");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 产生随机数组
|
|
|
+ *
|
|
|
+ * @param startPos 范围的起始
|
|
|
+ * @param endPos 范围的终止
|
|
|
+ * @return 产生的数组
|
|
|
+ */
|
|
|
+ public static int randNumber(int startPos, int endPos) {
|
|
|
+ int number = (int) (Math.random() * endPos + startPos);//随机生成startPos - endPos 的整数
|
|
|
+ return number;//返回生成的数组;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 数字判断
|
|
|
+ *
|
|
|
+ * @param originalNumber 原数字
|
|
|
+ * @param judgeNumber 需要判断的数字
|
|
|
+ * @return 0 下了
|
|
|
+ * 1 等于
|
|
|
+ * 2 大了
|
|
|
+ */
|
|
|
+ public static int judge(int originalNumber, int judgeNumber) {
|
|
|
+ if (originalNumber > judgeNumber) {
|
|
|
+ return 0;
|
|
|
+ } else if (originalNumber < judgeNumber) {
|
|
|
+ return 2;
|
|
|
+ }
|
|
|
+ return 1;
|
|
|
+ }
|
|
|
+}
|