我正在创建一个mineseweeper游戏。
它要求用户输入(行,列)以“点击”网格中的某个位置。该位置显示的数字表示网格上8个周围位置的炸弹数量。有定期炸弹,让你失去生命,接近炸弹,也揭示了所有8个周围的位置。
我需要使用递归函数:
浏览网格中某个位置的周围项目以计算炸弹数量,以便知道要在该位置放置哪个数字。
当我'点击''接近'炸弹时,它会暴露所有周围的物品。
当我点击'0'时,它会检查周围的项目并公开所有其他'0'及其周围的项目,例如:
X X X X X X X X X X X X X X X 1 1 1 1 1 0 0 0 0 0
网格= 5 X 5,显示为
X X X X X
X X X X X
X X X X X
X X X X X
X X X X X
用户输入请求行和列,然后将其作为字典键存储在元组中。每次转弯后,它重新打印网格,显示存储在字典中的先前转弯。
这就是我现在所拥有的:浏览周围的位置并计算该位置的数量。因此,如果数字为“0”,我必须透露周围的位置,他们也会通过周围的位置检查
> def getNum(pos, bombPos, grid):
> num = 0
> for i in range(pos[0] - 1, pos[0]+2):
> for j in range(pos[1]-1, pos[1] + 2):
> if (i,j) != pos:
> if (i,j) == bombPos:
> num += 1
我很难把握递归概念作为一个整体,以及如何在这个项目中使用它。任何帮助表示赞赏。感谢。