-3

我正在制作一个游戏,让用户猜测 3 次,如果用户猜对了数字,那么他们将赢得一辆车。我还希望用户只有 3 次尝试。

static void Main(string[] args)
{
    double numberToGuess = 3595.96;
    double userGuess = 0;

    while (userGuess != numberToGuess)
    {
        Console.Write("Enter your price guess: ");
        userGuess = Convert.ToDouble(Console.ReadLine()); 

        if (userGuess > numberToGuess)
        {
            Console.WriteLine("£{0} is too high!", userGuess);
        }
        else if (userGuess < numberToGuess)
        {
            Console.WriteLine("£{0} is too low!", userGuess);
        }
        else
        {
            Console.WriteLine("£{0} is right! Congratulations.", userGuess);

        }
    } Console.ReadKey();
}
4

3 回答 3

3

我喜欢学校作业:)

您应该创建一个新变量,例如 int attempts = 0并在 while 循环结束时增加它。

如果尝试次数大于 2,则应该break循环。

例子:

int attempts = 0;

while (userGuess != numberToGuess)
{

    }
    attempts++;
    if (attempts > 2)
    {
        Console.WriteLine("Too bad, you didn't make it within three guesses.");
        break;
    }

} Console.ReadKey();
于 2013-10-12T21:47:08.420 回答
1

显然,您需要一个计数器来衡量他们进行了多少次尝试。该计数器的类型和名称应该是什么?初始值?

然后,您需要逻辑来测试与值 3 相对应的测试。
您知道如何进行该测试,对吗?

当测试表明用户已经达到 3 次猜测时,它应该退出。
你知道怎么退出,对吧?

所以有什么问题?

于 2013-10-12T21:47:01.530 回答
0
int guessCount = 0;

do
{
    // guess logic
    ...
    else
    {
        // guess is correct
        break;
    }
}while( ++guessCount < 3 )
于 2013-10-12T21:46:26.073 回答