Есть ли способ проверить, находится ли число уже в сетке 3x3 в сетке вложенных списков 9x9?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Есть ли способ проверить, находится ли число уже в сетке 3x3 в сетке вложенных списков 9x9?

Сообщение Anonymous »

Программирую игру судоку, и у меня есть вложенный список, действующий как моя доска, и записанная логика, однако я озадачен тем, как проверить, находится ли число конкретно в сетке 3x3 на вложенной доске со списком 9x9, которую я использовал. получил

Код: Выделить всё

#board initilization
board = [
[0, 0, 0, 0, 0, 0, 0, 0, 0],
[0, 2, 0, 0, 0, 0, 0, 0, 2],
[0, 0, 0, 3, 0, 3, 0, 0, 0],
[0, 0, 5, 0, 0, 0, 0, 0, 0],
[0, 8, 0, 0, 0, 6, 0, 5, 0],
[0, 0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 2, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 9, 0],
[0, 0, 0, 1, 0, 0, 0, 0, 0]
]

#main game logic
#list printing logic and collecting user inputs
while True:
print("Welcome to the Python Sudoku")
print("Here's your board")
for row in board:
print(row)
print("You will have a choice to which row you choose and which column you choose")
print("You will also have a choice of number you wish to input")
rowchoice = int(input("Please pick the row you wish to add the number to 0-8 where 0 is the first row"))
#error handling to handle invalid inputs nested in to check after each input
if rowchoice > 8:
print("Invalid number, try again")
continue
if rowchoice < 0:
print("Invalid number, try that again")
continue
columnchoice = int(input("Please pick the column of choice 0-8 where 0 is the first column"))
if columnchoice > 8:
print("Invalid number try again")
continue
if columnchoice < 0:
print("Invalid number try again")
continue
guess = int(input("Please pick the sudoku guess number 1-9"))
if guess > 9:
print("Invalid number, try again.")
continue
if guess < 0:
print("Invalid number, try again")
continue
#adding user guess to user choice
board[rowchoice][columnchoice] = guess
#printing new updated board
for row in board:
print(board)

Думал попробовать проверить, есть ли он в одном из списков, но не думаю, что это сработает, поскольку каждый список не представляет собой сетку 3х3

Подробнее здесь: https://stackoverflow.com/questions/791 ... d-of-neste
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»