猜数字游戏

问题

用计算机实现一个随机1~100之间的数字,然后由用户来猜这个数字,根据用户猜测的次数分别给出不同的提示。

模拟算法

它的侧重点不在于求解,而在于实现题目所述过程,结果只不过是过程实现的副产品。

思路

感觉没啥可说的,就是模拟过程。就分5次,只要猜不中,就提示“猜错了哦!”,直接结束程序。1次就猜中,提示“你真聪明”,2次猜中,提示“你还可以哦”,3次猜中提示“你怎么才猜中呢”,4次猜中“唉呀妈呀,你终于猜中了”,5次猜中“太勉强了”。5次以后无论能不能猜中都结束程序,5次之内猜对也结束程序。

使用

package com.company;

public class Main {

    public static void main(String[] args) {
    // write your code here
        Solution.guessNumber();
    }
}

输出

1~100中的随机数已经生成
请猜第1次:
24
猜错了哦!
请猜第2次:
46
猜错了哦!
请猜第3次:
37
猜错了哦!
请猜第4次:
98
猜错了哦!
请猜第5次:
57
猜错了哦!
游戏结束

Process finished with exit code 0

实现

package com.company;

import java.util.Random;
import java.util.Scanner;

public class Solution {
    /**
     * 用模拟算法解决猜数字游戏
     */
    static public void guessNumber() {
        int randomInt = new Random().nextInt(100) + 1;
        System.out.println("1~100中的随机数已经生成");
        int guessCount = 0;
        while (guessCount < 5) {
            System.out.println("请猜第" + (guessCount + 1) + "次:");
            Scanner scanner = new Scanner(System.in);
            int inputInt = scanner.nextInt();
            switch (guessCount) {
                case 0:{
                    if (inputInt == randomInt) {
                        System.out.println("你真聪明");
                        System.out.println("游戏结束");
                        return;
                    } else System.out.println("猜错了哦!");
                }break;
                case 1:{
                    if (inputInt == randomInt) {
                        System.out.println("你还可以哦");
                        System.out.println("游戏结束");
                        return;
                    } else System.out.println("猜错了哦!");
                }break;
                case 2:{
                    if (inputInt == randomInt) {
                        System.out.println("你怎么才猜中呢");
                        System.out.println("游戏结束");
                        return;
                    } else System.out.println("猜错了哦!");
                }break;
                case 3:{
                    if (inputInt == randomInt) {
                        System.out.println("唉呀妈呀,你终于猜中了");
                        System.out.println("游戏结束");
                        return;
                    } else System.out.println("猜错了哦!");
                }break;
                case 4:{
                    if (inputInt == randomInt) {
                        System.out.println("太勉强了");
                        System.out.println("游戏结束");
                        return;
                    } else System.out.println("猜错了哦!");
                }break;
                default:break;
            }
            guessCount++;
        }
        System.out.println("游戏结束");
    }
}

你可能感兴趣的:(猜数字游戏)