我正在 Ruby Connect 4 游戏中测试对角获胜。我一直在使用硬编码的二维数组进行测试:
grid_array = [
["B", ".", ".", ".", ".", ".", ".", "."],
[".", "B", ".", ".", ".", ".", ".", "."],
[".", ".", "B", ".", ".", ".", ".", "."],
[".", ".", ".", "B", ".", ".", ".", "."],
[".", ".", ".", "X", "M", ".", ".", "."],
[".", ".", ".", ".", "X", "M", ".", "."],
[".", ".", ".", ".", ".", "X", "M", "."],
[".", ".", ".", ".", ".", ".", "X", "M"]
]
Run Code Online (Sandbox Code Playgroud)
该方法的内部循环工作正常(正确识别'M'或单独为获胜者,但例如,'B'当尝试将对角线检查跨列或向上移动到外循环以获取获胜值时,我陷入困境。'X'
def …Run Code Online (Sandbox Code Playgroud)