Теперь мучаем ChatGPT.
Arigato пишет:У меня есть большой код, надо понять, что он делает. Поможешь?
ChatGPT пишет:Да. Пришли код целиком или часть, и уточни: нужен общий обзор (что делает в целом) или построчный разбор.
Включаю режим Думать дольше и прикрепляю файл 1.html.
Arigato пишет:Вот файл. Мне не нужно разбирать сам файл с технической точки зрения. Мне нужно, чтобы ты ответил на вопрос: что делает этот код? То есть что должен увидеть пользователь.
Думал на протяжении 24s
ChatGPT пишет:Это статическая реализация игры «крестики-нолики», построенная только на HTML и CSS. Пользователь видит выбор X или O, затем 3×3 сетку из клеток. Клик по клеткам — это переход по якорям (фрагменты `#id`), которые открывают преднарисованные состояния ходов. Символы X и O отображаются через CSS-псевдоэлементы.
Arigato пишет:На сколько умный интеллект у компьютера в данной реализации? Можно ли его обыграть?
Думал на протяжении 19s
ChatGPT пишет:Нет интеллекта.
Это полностью статическая игра: каждый клик — обычный переход по якорю `#id` к заранее прописанному состоянию поля. «Ход компьютера» просто открывает следующий преднарисованный фрагмент.
Победить можно только если в одном из этих предопределённых путей предоставлено состояние, где вы получаете три в ряд. В противном случае переходы приведут к ничье или к вашему проигрышу.
Если хотите найти гарантированный выигрыш — смотрите в HTML ветки (`<p id="...">`) и ищите последовательность якорей, ведущую к состоянию с тремя `<b>` (X) или тремя `<i>` (O) в линии.
Промежуточный вывод:
1. ChatGPT также смог понять, что это игра "крестики-нолики".
2. Ответы ChatGPT оказались предельно немногословными (в отличии от DeepSeek). Но это связано с моими глобальными настройками ChatGPT, чтобы он не вываливал простыни текста, а отвечал по сути. Нам же важнее правильность ответа, а не многословие.
3. DeepSeek смог правильно ответить на последний вопрос - обыграть компьютера в данной реализации невозможно. ChatGPT напрямую не ответил, а предложил мне самому искать в файле выигрышные для игрока последовательности.
Попробуем задать ChatGPT наводящий вопрос:
Arigato пишет:Мне нужно знать, есть ли у игрока шанс победить компьютер в данной реализации?
Думал на протяжении 1m 20s
ChatGPT пишет:Да. Если выбрать O — шанс есть; если выбрать X — шансов нет.
Игра статична, все состояния предопределены в HTML; из стартовой страницы для O (`#1`) по ссылкам достижимо состояние с выигрышем O (например `<p id="53">`), а из стартовой для X (`#0`) выигрышных состояний для X в достижимой ветке не найдено.
И это неверный ответ, так как игрок всегда играет за X, а компьютер за O. В данном случае ChatGPT не смог понять этот момент, а сделал предположение, что если бы игрок играл за O, то смог бы победить. Предположение ошибочное.
ChatGPT подумал, что меню выбора в начале игры: "X | O" - это выбор за что играет игрок. DeepSeek же правильно смог определить, что это выбор кто делает первый ход: игрок или комп. А игрок всегда играет за X.
Не смотря на то, что ответ оказался неверным, размышления у ChatGPT достаточно глубокие (их можно увидеть, если кликнуть в ответе по времени размышления, тогда вываливаются его промежуточные действия, которые приводят к ответу). Опять же, это ну никак не продвинутый T9, там содержится очень глубокий анализ, требующий интеллекта.
Попробую уточнить, может ли игрок играть за O:
Arigato пишет:За какую фигуру в этой реализации игры играет игрок и компьютер? Может ли игрок играть за другую фигуру, или у него нет такого выбора?
Думал на протяжении 25s
ChatGPT пишет:Игрок сам выбирает фигуру вначале — есть две ссылки «X» и «O».
После выбора игрок ходит выбранной фигурой, «компьютер» играет противоположной.
Переключиться в ходе партии нельзя — все состояния и ответы за «компьютер» предопределены в HTML.
Все, ответ неверный. Игрок всегда играет за X, компьютер за O.
Итоги битвы двух нейронок
DeepSeek победил, выдав правильный ответ, полностью поняв логику реализации игры.
ChatGPT с задачей справился лишь частично, причем не помог даже дополнительный наводящий вопрос.
P.S. Задал еще один вопрос ChatGPT:
Arigato пишет:Кто в этой игре делает ход первым, игрок или компьютер?
Думал на протяжении 16s
ChatGPT пишет:Если игрок выбирает X — первым ходит игрок. Если выбирает O — первым ходит компьютер.
Таки ChatGPT смог понять, что выбор в начале игры это не выбор фигуры, за которую играет игрок, а выбор, кто делает первый ход. Из явного недостатка нейронок, это их неспособность задним числом находить свои ошибки. То есть на мой последний вопрос он ответил (и ответил верно), но не смог понять, что чуть выше сам же писал другое. Мог бы и пояснить, что выше он, оказывается, ошибался. Но так не умеет. Может в новых (более умных версиях) научат подобному трюку...