猜测游戏随机数为静态

时间:2014-12-01 02:50:13

标签: visual-studio-2012 c++-cli

我已经创建了一个猜测游戏,它生成一个随机数,取用户的猜测,并且基本上输出用户的猜测是太高还是太低(输出蓝色,更冷)或更接近(更温暖,输出红色)同时使用两个文本框背景颜色和标签,正如您在我的代码中看到的那样。我遇到困难的问题是每次我点击提交时,程序都会生成一个新的随机数。我希望程序使用相同的数字直到用户的猜测正确,然后如果用户想再次播放,它可以生成一个新的数字。
我正在考虑使用while循环,例如

我怎么可能让随机数保持静态(相同),直到它被正确猜到,如果我确实需要一个while循环,哪里是放置它的理想位置?

2 个答案:

答案 0 :(得分:0)

将生成的随机数分配给变量,然后使用该变量,直到需要新的随机数。

在此特定实例中,代码行number = rand() % 1000 + 1;需要在按钮点击方法的。否则,每次单击该按钮,它都会生成一个新的随机数。

答案 1 :(得分:0)

您要做的是将number变量的声明移到课程顶部,在任何函数之外,如下所示:

class NumberGuessingGame
{
    public: int number = 0;
}

然后,在MyForm_Load方法中,您可以生成随机数,并将其值设置为该变量,例如:

private: System::Void MyForm_Load()
{
    //Set the value of number here to a newly generated random integer
}

然后,您应该可以访问number函数中的button1_Click变量:

private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e)
{
    if (input > this->number)
    {
        //code
    }

    //Rest of your ifs
}