0

これまでクラスで学んだ概念 (while ループ、ブール値、if ステートメント) を使用して、練習用に 3 行ゲームを作成しています。

何らかの理由で、関数が False を返す必要がある引数を指定したにもかかわらず、False を返していないようです。代わりに、「コマンドを実行しています。結果をお待ちください」というメッセージが表示され、その後何も表示されません。最初はどこかで無限ループに引っかかっていると思っていましたが、すべての変数に制限を与え、すべての while ループの最後に +=1 を追加したため、そうすべきではないと思います。

どんな助けでも大歓迎です!

以下は私のコードのスニペットです:

def is_winner(grid):
    x = 0
    y = 0


    while x <=3:
        x +=1
        while y <= 4:  

            if grid[x][y] == grid[x + 1][y] ==grid[x + 2][y]:
                y += 1

                return True
    while x <= 3: 
        x +=1
        while y <= 3:
            if grid[x][y] == grid[x + 1][y - 1] == grid[x + 2][y - 2]:
                y +=1

                return True

    else:
        return False
4

1 に答える 1