|
0 / 0 / 0
Регистрация: 05.03.2023
Сообщений: 1
|
||||||
Оцените и посоветуйте как можно улучшить код Крестики-нолики05.03.2023, 19:56. Показов 17304. Ответов 284
Метки нет (Все метки)
Я учусь в 10 классе и для индивидуального проекта мне нужно чтобы вы оценили и как-то посоветовали улучшить код программы крестики нолики на C++. Вот сам код:
0
|
||||||
| 05.03.2023, 19:56 | |
|
Ответы с готовыми решениями:
284
Крестики-нолики, улучшить программу Как оптимизировать данный код игры крестики нолики? Оцените игру крестики нолики (Player vs Bot easy) |
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|||
| 13.03.2023, 21:38 | |||
|
Добавлено через 36 секунд
0
|
|||
|
Just Do It!
|
|
| 13.03.2023, 21:48 | |
|
SmallEvil,
в сишке же есть структуры. не хочешь С++, но сишные структуры то можно же использовать? кто или что запрещает??? и return в сишном стандарте тоже есть. Добавлено через 4 минуты
0
|
|
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
||||
| 13.03.2023, 21:51 | ||||
|
Можно и структуру. Это не принципиально. Она же будет только в этом "интерфейсе" и использоваться. Так зачем что-то городить ? Добавлено через 1 минуту
0
|
||||
|
Just Do It!
|
|||
| 13.03.2023, 22:15 | |||
|
кого то от крестов воротит, а меня вот от сишкокода) Добавлено через 5 минут а также нагляднее - точка это точка - ОДНА переменная на входе. ну, может и по другому надо её назвать, например, как в виндозе COORD входные переменные это входные, а что возвращается видно - тоже видно за три версты. а так нужно ещё догадаться, для чего это использовать. не мною это придумано! уже 50 лет как все джедаи так прогают. я не беру тех свреходаренныз физиков с машкодами... чей код никто никогда не читает.
0
|
|||
|
737 / 704 / 110
Регистрация: 29.05.2015
Сообщений: 4,316
|
|
| 13.03.2023, 22:48 | |
|
1. Освоить GUI и написать красивые крестики-нолики, комп может ходить хоть рэндомом.
2. Заменить рэндом на ИИ.
0
|
|
|
Just Do It!
|
||
| 13.03.2023, 23:15 | ||
|
осталось ИИ написать. Добавлено через 3 минуты Royal_X, SmallEvil, добавил твой стандарт: https://github.com/BDOTimer/cf... _SmallEvil чуть позже прикручу. там надо вот с нуля написать: void set_point(int x, int y, bool color){ где что брать.
0
|
||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|||||
| 13.03.2023, 23:27 | |||||
|
По дефолту Рендзю начинается с черной фишки в центре поля. Ход дается Игроку играющему белыми. Добавлено через 3 минуты От Royal вроде, бы и норм все, но плохо поддается модернизации. WinAPi колода еще та. Придется тест делать либо в консоли, либо таки на Qt запилю. Хотя консоль ближе. С виджетами опять, либо дешево и деревьяненько, либо долго и не интересно. Добавлено через 3 минуты То есть не освоит GUI, а лишь взять другую версию арбитра, и прицепить к нему GUI. Добавлено через 1 минуту
1
|
|||||
| 14.03.2023, 00:05 | ||
|
Не по теме:
https://ru.wikipedia.org/wiki/Рэндзю всего лишь крестонолики хотел сделать)) а там аш международка проходит ... студентом в го я играл, пока проигрывал все со мной охотно играли, а когда перестал проигрывать все забили на го)
0
|
||
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
||
| 14.03.2023, 00:11 | ||
- первый игрок ставит 2 черных и 1 белый камешек - потом второй игрок решает, играть белыми или черными - когда цвета определились, белые ставят один белый камешек - черные ставят 2 черных камешка - белые убирают один из двух черных камешек, установленных во время предыдущего хода - белые ставят белый камешек И дальше игра идёт как обычно, каждая сторона по камню за ход. И таких странностей в рендзю очень много. Что я прилагаю? Облегчить жизнь! 1) Заранее выбрать один размер доски (например, 15х15, но не тривиальные 3х3) и количество камней для победы (например, 5, но ни в коем случае 3 для большой доски). Также предлагаю заранее выбрать максимальное время на ход (например, 5 с). 2) не усложнить игру лишними правилами. По сути, правила должны состоять в том, что игроки просто по очереди делают ходы, пока кто-то не победит или не будет ничья. Разумеется, что первый игрок имеет преимущество, но этот недостаток может решаться сменой цветов. Т.е. каждый движок играет с другим движком не менее 2 игр или любое четное количество игр. 3) Обоим движкам дать одинаковое количество оперативной памяти. Запрещать движку использовать ponder (предварительное обдумывание во время хода противника).
2
|
||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|
| 14.03.2023, 01:03 | |
|
0
|
|
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
||||||
| 14.03.2023, 21:58 | ||||||
|
XLAT
Вообщем допилил сегодня свой интерфейс и своего тестировщика. Код, самый примитивный и безмозглый, который у меня тогда никак не пришился к твоему проекту, работает точно так как я ожидал. И никаких чудо-юдо телодвижений. Провел тест, поле 9*9 , 5 в ряд, сам с собой отыгривает на ничию, так как пока ходы выбираются без рандома, то партия уже стабильно устоявшаяся - НИЧЬЯ.
1
|
||||||
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
|
| 15.03.2023, 00:44 | |
|
SmallEvil, а я уже заменил Рандомича своим примитивным движком, который всё ещё нужно оптимизировать. Но мой движок вообще не готов к соревнованию, т.к. пишется не под проект XLAT, а под мой гуй. Думаю, несложно будет потом преобразовать движок для турнира, если я увижу, что это движок, с которым не стыдно соревноваться. Мне просто для тестирования удобно с гуем. Кстати, в ближайшее время приостановлю работу над движком и, наверное, займусь улучшением гуя. В планах реализовать многопоточность, чтобы интерфейс не зависал при работе движка.
Самое интересное, что осознал при написании движка это то, что тот же самый код можно использовать для шахматного движка или для другого движка для игры двух лиц с нулевой суммой) По сути, нужно только менять проверки и эвристическую функцию. Алгоритмы поиска и оптимизаций вообще не меняются.
0
|
|
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|||
| 15.03.2023, 01:11 | |||
|
Можно сразу видеть как он ведет себя при определенных условиях. И эти условия сразу создавать. Сделаешь гуй приятный глазу, я бы своего запросто прикрутил бы. Раз уж я сам жалкое подобие арбитра уже написал для консоли. Держи красивые камушки ) https://www.kindpng.com/picc/b... le-png.png https://www.kindpng.com/picc/b... le-png.png Добавлено через 1 минуту
0
|
|||
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
|||
| 15.03.2023, 10:29 | |||
Да и ранее я уже говорил, как надо создавать нормальный гуй. Сперва нужно описать протокол взаимодействия движка и оболочки. Потом строго по этому протоколу создать оболочку и движок. Движок должен быть нормальным *.exe файлом, который загружается через приятный интерфейс. В таком случае, можно будет опубликовать оболочку и протокол, чтобы желающие разработали свои собственные движки. Что касается красоты, то XLAT вроде бы уже упоминал, что красивый гуй можно быстро сделать в любом игровом движке, которые к тому же кроссплатформенные. Но, если не ошибаюсь, цель вашей с ним затеи это устроить соревнование движков, а не сравнивать у кого в гуе графика ультра-реалистичная и оптимизированная.
1
|
|||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|||
| 15.03.2023, 11:07 | |||
![]() Но красивые ГУИ на пальцах считаются. Видно придется самому. Хотя особо желания нету. Добавлено через 1 минуту XLAT, и кстати, наследоваться от std::vector , это тоже бог велел ?
0
|
|||
|
737 / 704 / 110
Регистрация: 29.05.2015
Сообщений: 4,316
|
|
| 15.03.2023, 12:50 | |
|
Да что вы так боитесь этого Гуя? Вот, пжалста, пара десятков строчек кода. Для работы программы достаточно 2-х мерного массива, в котором будет находиться 0, 1 и 2 - пусто, синий и красный кружочек в таблице. Для хода человека кликаешь в таблицу. Для хода компа передаёшь массив в ИИ, он шевелит мозгами и делает гениальный ход:
1
|
|
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
|
| 15.03.2023, 14:19 | |
|
alexu_007, нечто похожее я ещё давно создал и выложил в этой теме. Кстати, мой гуй более продвинутый, чем твой, и тоже был написан за очень короткое время.
Тут речь шла о полноценном и приятном на глаз гуе с кучей настроек, с возможностью подключать и отключать движки, проводить турнир движков и т.д. Вот, загугли Arena Chess GUI. Что-то в этом роде.
0
|
|
| 15.03.2023, 14:19 | |
|
Посоветуйте как улучшить код Посоветуйте, как улучшить код?
Подскажите какую игру можно написать в Делфи, не сильно сложную, не такую, как змейка, крестики-нолики, пинг-понг и т.д? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
|
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
|
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения.
https:/ / habr. com/ ru/ sandbox/ 295048/
начало и оглавление
-
Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование. . .
|
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
|
|
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано
Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
|
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано
Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
|
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0)
Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона
Уважаемые коллеги!
В продолжение. . .
|
Грибы - это женщины, деревья - это мужчины. Анти инь янь для союза мужчины и женщины.
anaschu 18.07.2026
ГЛАВНЫЙ НАУЧНО-ФИЛОСОФСКИЙ ВЫВОД: Сексуально-Репродуктивный Капитализм против Государства Моногамии
Коллеги, мы вышли на финишную прямую 20-мерного ОДУ-моделирования вековой сукцессии (ветка. . .
|