Я пытаюсь запрограммировать вариант подключения четырех для моего класса программирования. Плата размером 6x8. В варианте Im пытается программировать выигрышное условие, по существу, построить Л.Python: Попытка запрограммировать вариант соединения четыре: условие победы не останавливается
Это означает, что любое построение формы
X
X
X X
выигрышная состояние.
Я пытаюсь сделать функцию, которая проверяет каждую колонку для последовательного же символа, чтобы построить пару. И функция сделать то же самое для каждой строки. С помощью этих двух функций я бы затем проверил, являются ли 2 пары последовательными, потому что независимо от того, как вы объедините вертикальную и горизонтальную пару, он всегда будет строить «L».
Чтобы сделать четкий совет, я использую
def ClearBoardSingle():
global Board
Board = [['0' for i in range(8)] for i in range(6)]
BoardPrint()
PlayerMoveSingle()
И для моего интерфейса я использую
def BoardPrint():
global Board
global GameMoves
global PlayerTurn
global Player1Symbol
global Player2Symbol
print('\n\nMoves done: ' + str(GameMoves))
print('To Restart: R | To Quit: Q')
print('Valid choices: 1, 2, 3, 4, 5, 6, 7, 8')
if PlayerTurn == 0:
print('It\'s ' +str(Player1Symbol) + '\'s Turn')
if PlayerTurn == 1:
print('It\'s ' +str(Player2Symbol) + '\'s Turn')
print(Board[0])
print(Board[1])
print(Board[2])
print(Board[3])
print(Board[4])
print(Board[5])
Я уже понял, как изменить переменные внутри совета, и я все в значительной степени сделано, единственное, что я не знаю, как внедрить, - это условие победы. Я пробовал эту функцию для рядов
def VerticalList(Column):
global Board
global Choice
global Row0
Column = int(Column)
Choice = int(Choice)
print(Column,' C')
while Column > 0:
for Board[Column][Choice] in range(Column):
Row0.append(Board[Column][Choice])
if Column ==6 or Column == -1:
break
else:
VerticalList(Column-1)
if Column ==0:
break
else:
continue
if Column == 0:
Column += 1
while Column < 5:
Column +=1
if Row0[Column] == Row0[Column-1]:
print('Pair')
else:
print('No Pair')
pass
else:
pass
Но это заканчивается бесконечной петлей.
У меня больше нет идей о том, как реализовать условие победы. Я был бы признателен за любую помощь или идеи, если вы хотите, чтобы я опубликовал весь код или другие фрагменты запроса.
Благодарим вас в ожидании!
Вау, звучит так же, как проблема CS101 я был тоже назад, когда память была измерена в мегабайтах – Ray
отформатирован ваш код правильно? возможно, просто вырезать-n-paste ошибку, попав в SO? отступ вашего кода влияет на область переменной. –
Я запрограммировал условие выигрыша в другом файле, поэтому я случайно не испортил код игры. Я попробовал свою «Игру», и она работает правильно, но поскольку у меня еще нет условия выигрыша, игра заканчивается только тогда, когда заполняются все поля (в этом случае 48). –