Поскольку игра настолько проста, вы можете создать дерево поиска. Это дерево, альтернативы между «вашим движением» и «вражеским движением». Враг всегда выбирает то, что лучше для них, и вы всегда выбираете то, что лучше для вас. Для каждой позиции доски оценивайте ее как «WINS»/«LOSE»/«TIE», если оптимальная игра приводит к выигрышу/проигрышу/привязке, соответственно. Выполните поиск по глубине (или любой поиск) и выберите ветку. Это в основном то, как работают сложные шахматные программы, которые избивают гроссмейстеров (хотя они сильно оптимизированы и работают на отличном оборудовании параллельно). Это называется minimax algorithm.
В качестве альтернативы вы можете запрограммировать все оптимальные ходы под рукой (с помощью процедуры, которая сравнивает ее с известными ходами, вращая и переворачивая плату). Есть только 500-ий возможности.
Однако, поскольку tic-tac-toe - решаемая игра, это было бы довольно скучно. Компьютер всегда будет связывать вас, если компьютер играет оптимально. Поскольку tic-tac-toe только бросает вызов 5-летним подросткам, вы можете рассмотреть аудиторию своей игры: может быть разумно, чтобы компьютер сделал случайный не проигрывающий ход. Тогда у человека, по крайней мере, есть шанс.
Существует оптимальная стратегия по википедии ... – UmNyobe