我创建了一个井字游戏程序,它允许玩家通过选择绳索来选择二维数组中的移动,然后计算机进行移动。
该程序有效,但计算机的移动是顺序的,而不是随机的,并且总是会选择数组中的下一个可用空间。现在我的游戏已经可以运行了,我想将程序改进为三个难度级别:
简单 = 计算机随机生成的移动 中等 = 计算机随机生成的移动,检查阻止玩家并完成线路 困难 = 每次通过递归选择最佳移动
如何让计算机随机选择阵列中的一组线?
(我目前用于计算机的基本 for 循环移动)
static void Computermove(char[,] gamegrid, char fin)
{
Console.WriteLine("\nComputer's turn");
Console.ReadKey();
int x = 0;
int y = 0;
for (x = 0; x < 2; x++)
{
for (y = 0; y < 2; y++)
if (gamegrid[x, y] == ' ') break;
if (gamegrid[x, y] == ' ') break;
}
if (x * y == 9)
{
fin = 'X';
}
else
gamegrid[x, y] = 'O';
} // End Computermove