Как крестики-нолики стали задачей для компьютера

Чтобы сыграть в крестики-нолики, человеку достаточно взглянуть на поле и выбрать клетку. Для программы этот простой ход нужно разложить на точные правила: как представить девять клеток в памяти, какие из них заняты и при каком расположении игра заканчивается. Подростковая программа Билла Гейтса превращала такую игру в последовательность вычислимых шагов.

От доски к математической логике

Компьютер не «понимает» крестики-нолики так, как человек. Он проверяет варианты по заданным условиям. Например: если в ряду уже стоят два знака компьютера, а третья клетка свободна, её стоит занять и завершить ряд. Если же соперник почти собрал линию, свободную клетку нужно закрыть. Так игровые решения становятся проверкой комбинаций и выбором следующего действия.

Телетайпный терминал служил одновременно способом общения с машиной и устройством ввода-вывода: пользователь набирал команды и получал ответ печатью на бумаге. Вместо современной графической доски ход приходилось задавать текстом, а результат — читать в строках символов. Это делало задачу особенно наглядной: программа должна была не только выбирать ход, но и сообщать его через предельно простой интерфейс.

Почему такая игра была хорошим испытанием

Крестики-нолики имеют небольшое поле и ясные правила, поэтому подходят для первых экспериментов с программированием. Но игра требует связать несколько идей: хранение состояния поля, проверку победных линий и выбор хода с учётом действий соперника. Здесь компьютерная логика впервые выглядит не как абстрактная формула, а как поведение: машина отвечает на ход человека своим собственным.