Arti0mka / Projekt1pository

This my new repository. :) Ha-ha ha
0 stars 0 forks source link

давай посложнее изменим алгоритм выигрыша #8

Closed ihsinme closed 3 years ago

ihsinme commented 3 years ago

выигрывать должен тот кто поставит два символа по бокам символа противники

например xox или oxo

изменяем код в той же функции

def check_win(board):
    win_coord = ((0,1,2),(3,4,5),(6,7,8),(0,3,6),(1,4,7),(2,5,8),(0,4,8),(2,4,6))
    for each in win_coord:
        if board[each[0]] == board[each[1]] == board[each[2]]:
            return board[each[0]]
    return False

но напоминаю

  1. for это цикл он делает то что под ним столько раз сколько у него есть шагов. в данном коде он выполнит
       if board[each[0]] == board[each[1]] == board[each[2]]:
            return board[each[0]]

    столько раз сколько сможет забрать each из масива win_coord ( в коде выше это 8 раз ) при этом each каждый раз будет меняться первый раз она будет равна (0.1.2) и так далее

  2. if это условие которое будет проверено и если оно правильное (говорят истинное) то выполнится код под ним
         return board[each[0]] 
Arti0mka commented 3 years ago

def check_win(board): win_coord = ((1,7),(1,3),(3,9),(9,7),(2,8),(4,6),(1,9),(3,7)) for each in win_coord: if board[each[0]] == board[each[1]] == board[each[2]]: return board[each[0]] return False Так или нет?

ihsinme commented 3 years ago

Я не согласен с твоим решением

Arti0mka commented 3 years ago

Так? def check_win(board): win_coord = ((0,2),(0,6),(2,8),(0,3,6),(6,8),(1,7),(3,5),(0,8),(2,6)) for each in win_coord: if board[each[0]] == board[each[1]] == board[each[2]]: return board[each[0]] return False py

Arti0mka commented 3 years ago

    win_coord = ((0,2),(0,6),(2,8),(0,3,6),(6,8),(1,7),(3,5),(0,8),(2,6))
    for each in win_coord:
        if board[each[0]] == board[each[1]] == board[each[2]]:
            return board[each[0]]
    return False
Arti0mka commented 3 years ago

    win_coord = ((0,2),(0,6),(2,8),(0,3,6),(6,8),(1,7),(3,5),(0,8),(2,6))
    for each in win_coord:
        if board[each[0]] == board[each[1]] == board[each[2]]:
            return board[each[0]]
    return False
Так,
Arti0mka commented 3 years ago

    win_coord = ((0,2),(0,6),(2,8),(0,3,6),(6,8),(1,7),(3,5),(0,8),(2,6))
    for each in win_coord:
        if board[each[0]] == board[each[1]] == board[each[2]]:
            return board[each[0]]
    return False```
Так?
Arti0mka commented 3 years ago

    win_coord = ((0,2),(0,6),(2,8),(0,3,6),(6,8),(1,7),(3,5),(0,8),(2,6))
    for each in win_coord:
        if board[each[0]] == board[each[1]] == board[each[2]]:
            return board[each[0]]
    return False```
Arti0mka commented 3 years ago

    win_coord = ((0,2),(0,6),(2,8),(0,3,6),(6,8),(1,7),(3,5),(0,8),(2,6))
    for each in win_coord:
        if board[each[0]] == board[each[1]] == board[each[2]]:
            return board[each[0]]
    return False