我已经创建了一个猜测游戏,它生成一个随机数,取用户的猜测,并且基本上输出用户的猜测是太高还是太低(输出蓝色,更冷)或更接近(更温暖,输出红色)同时使用两个文本框背景颜色和标签,正如您在我的代码中看到的那样。我遇到困难的问题是每次我点击提交时,程序都会生成一个新的随机数。我希望程序使用相同的数字直到用户的猜测正确,然后如果用户想再次播放,它可以生成一个新的数字。
我正在考虑使用while循环,例如
我怎么可能让随机数保持静态(相同),直到它被正确猜到,如果我确实需要一个while循环,哪里是放置它的理想位置?
答案 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
}