【MAC 上学习 C++】Day 8-3. 练习4-6 猜数字游戏 (15 分)

练习4-6 猜数字游戏 (15 分)

1. 题目摘自

https://pintia.cn/problem-sets/12/problems/283

2. 题目内容

猜数字游戏是令游戏机随机产生一个 100 以内的正整数,用户输入一个数对其进行猜测,需要你编写程序自动对其与随机产生的被猜数进行比较,并提示大了(Too big),还是小了(Too small),相等表示猜到了。如果猜到,则结束程序。程序还要求统计猜的次数,如果 1 次猜出该数,提示 Bingo!;如果 3 次以内猜到该数,则提示 Lucky You!;如果超过 3 次但是在 N(>3)次以内(包括第 N 次)猜到该数,则提示 Good Guess!;如果超过 N 次都没有猜到,则提示 Game Over,并结束程序。如果在到达 N 次之前,用户输入了一个负数,也输出 Game Over,并结束程序。

输入格式:

输入第一行中给出两个不超过 100 的正整数,分别是游戏机产生的随机数、以及猜测的最大次数 N。最后每行给出一个用户的输入,直到出现负数为止。

输出格式:

在一行中输出每次猜测相应的结果,直到输出猜对的结果或 Game Over 则结束。

输入样例:

58 4
70
50
56
58
60
-2

输出样例:

Too big
Too small
Too small
Good Guess!

3. 源码参考
#include
#include

using namespace std;

int main()
{
    int m, n, d;
    int i = 0;

    cin >> m >> n;

    do
    {
        i++;
        cin >> d;

        if (d < 0)
        {
            cout << "Game Over" << endl;
            return 0;
        }
        else if (d > m)
        {
            cout << "Too big" << endl;
        }
        else if (d < m)
        {
            cout << "Too small" << endl;
        }
        else
        {
            if (i == 1)
            {
                cout << "Bingo!" << endl;
            }
            else if (i <= 3)
            {
                cout << "Lucky You!" << endl;
            }
            else
            {
                cout << "Good Guess!" << endl;
            }

            return 0;
        }

        if (i == n)
        {
            cout << "Game Over" << endl;
            return 0;
        }

    } while (1);

    return 0;
}

你可能感兴趣的:(【MAC 上学习 C++】Day 8-3. 练习4-6 猜数字游戏 (15 分))