C# 单击时随机化的数字网格

C# 单击时随机化的数字网格,c#,C#,我正在做一个游戏,包括在网格中查找并单击一个数字(0-9),每次单击正确的数字时,网格都会随机化 我想得到它,这样当你点击正确的数字时,网格会再次随机化。 你会怎么做 下面是它最终的样子: 我假设您正在按顺序呈现一个整数数组: for (int i = 0; i < arrayOfNumbers.Length; i++ ) { // rendering here render(arrayOfNumbers[i]); } 然后您可以重新渲染(或让游戏循环继续渲染阵列)。由于

我正在做一个游戏,包括在网格中查找并单击一个数字(0-9),每次单击正确的数字时,网格都会随机化

我想得到它,这样当你点击正确的数字时,网格会再次随机化。 你会怎么做

下面是它最终的样子:


我假设您正在按顺序呈现一个整数数组:

for (int i = 0; i < arrayOfNumbers.Length; i++ ) {
    // rendering here
    render(arrayOfNumbers[i]);
}

然后您可以重新渲染(或让游戏循环继续渲染阵列)。由于数组已更改,您的渲染也将更改。

我假定您正在按顺序渲染整数数组:

for (int i = 0; i < arrayOfNumbers.Length; i++ ) {
    // rendering here
    render(arrayOfNumbers[i]);
}

然后您可以重新渲染(或让游戏循环继续渲染阵列)。由于数组已更改,因此渲染也将更改。

每次检测到单击正确的数字(我希望您知道如何执行此操作),您只需将网格中显示的数字数组随机化即可:

//Fisher-Yates algorithm
Random generator = new System.Random();
int len = array.Length;
while (len > 1)
{
    len--;
    int k = generator.Next(len + 1);
    int temp = array[k];
    array[k] = array[len];
    array[len] = temp;
}

每次你检测到点击正确的数字(我希望你知道怎么做),你只需随机化你在网格中显示的数字数组:

//Fisher-Yates algorithm
Random generator = new System.Random();
int len = array.Length;
while (len > 1)
{
    len--;
    int k = generator.Next(len + 1);
    int temp = array[k];
    array[k] = array[len];
    array[len] = temp;
}

请描述你的确切问题。请描述你的确切问题。