Как компьютер перемещает свой указатель?

Как можно переписать данный вопрос:

Я читаю книгу по крестики-нолики и использую код из нее, но столкнулся с непониманием одной части. В коде упоминается, что если ход не приводит к победе, то компьютер ставит фигуру в следующую свободную клетку, но я не вижу этой части в коде. Можете ли вы объяснить, как это реализовано в этом коде? И что означает строка found = winner(board) == computer;?
  • 7 января 2024 г. 22:07
Ответы на вопрос 2
Как перемещается указатель компьютера? 

Переформулированный вопрос может звучать так:

Я изучаю книгу про игру в крестики-нолики и воспроизводю код из книги, однако возникло затруднение в понимании определённой части кода. В документации говорится, что если ни один из возможных ходов не приводит к победе, то компьютер должен выбрать следующую пустую ячейку для своего хода. Несмотря на это, я не могу найти соответствующий участок кода, который бы описывал этот алгоритм. Не могли бы вы разъяснить мне, как данное поведение реализовано в представленном коде? Также хотелось бы понять, что именно делает линия кода с условием found = winner(board) == computer;?
<blockquote>Не понятно, говорится если ход не дает победы, то компьютер ставит фигуру в следующую клетку, </blockquote> <br/> <br/> Вот этот код ставит фигуру в текущую клетку: <code>board[move] = computer;</code> <br/> Двумя строчками ниже этот ход откатывается: <code>board[move] = EMPTY;</code> <br/> <br/> <code>found = winner(board) == computer;</code> - этот код присваивает булевой переменной found значение выражения <code>winner(board) == computer</code> .
Похожие вопросы