PDA

Просмотр полной версии : Крестики-Нолики


Ky3bMu4
08.01.2008, 22:17
Мой 2 нормальный релиз.
Вот, написал на С++. ++ потому что поигрался с исключениями. Мож кому пригодится.

slil.ru/25330625

ZaCo
09.01.2008, 00:52
:))))
>>You turn. Enter poision data of you X[x,y]. x -
>>1,1

You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!
You turn. Enter poision data of you X[x,y]. x - y - Invalid poision data!


вообще "релиза" в этом не вижу: задача крестиков ноликов на поле 3х3 более чем тривиальна и алгоритмически абсолютно не интересна, другое дело нормальная реализация игры в "точки" или "пять в ряд"..

GlOFF
09.01.2008, 00:57
А я вот люблю в кресты с нулями...

Ky3bMu4 Если релиза калькулятора не было, то ждем...

Ni0x
09.01.2008, 01:12
Ky3bMu4, я выиграл 3 раза и даже сделал из крестиков букву "O", но оутпост попрежнему работает. Я подозреваю, что это из-за того, что ты поигрался с исключениями(FALSE стало быть), но я не знаю что делать. Может быть нужно переустановить виндовс? Помогите, если кто знает.

ZaCo
09.01.2008, 01:21
ой, я не думал, что все так плохо - дело в следующем: на 3х3 легко доказать (перебор+симметричные ситуации) что в такие крестики-нолики нельзя проиграть.. вот держи самая проста реализация как раз-таки моей лабораторной работы: http://zaco.info/shah.cpp

KEZ
09.01.2008, 08:46
Я так подозреваю, в начальном варианте на поле были только "_", а потом стало уже X и O...

Ky3bMu4
09.01.2008, 13:56
но оутпост попрежнему работает

Ni0x может хватит? Я с этим давно завязал.;)


вообще "релиза" в этом не вижу
.....
что в такие крестики-нолики нельзя проиграть

В данном случае под релизом я понимал работающую программу:).
Я не ставил себе задачу алгоритма который у всех выигрывает, я хотел создать алгоритм который будет просто играть.


только "_", а потом стало уже X и O...

KEZ, может тоже хватит? '_' я тоже уже завязал:).

ZaCo
10.01.2008, 01:20
Ky3bMu4, может и тебе хватит? :(

>>В данном случае под релизом я понимал работающую программу

возможно тогда и int main(){}; работающая программа для игры в шахматы с базой эвристик? алгоритм, проигрывающий пользователю в игре крестики-нолики на поле 3х3 - НЕ работающая программа.

Delimiter
10.01.2008, 01:27
Но в принцыпе ,чтото в этом есть............

к примеру взять даже упрощенную игру например шашки на стоклеточном поле 10х10
к примеру упростить до варианта выигрывает тот кто первым проведет дамку

и забабахать турнирчик, где играли бы програмки друх с друхом
мысль требует шлифовки .... но она где то там есть ее не могет не быть.

ZaCo
10.01.2008, 01:48
да идея по соревнованиям программ не новая, но и вправду хорошая. только нужно учесть, что игры подобные шашкам, шахматам требуют нескольких игр между друг-другом, потому как алгоритмы выставления новой позиции там не прямые, и в общем-то не могут просчитать оптимальную стратегию до конца игры, так что выйгрыш двух хороших программ всегда будет с небольшой долей везения, короче не ясно чего идет проверка - программиста или программы ;)

Delimiter
10.01.2008, 01:55
Это точно ! НЕ НОВАЯ... и согласен со всем что ты сказал, я для примера назвал 100клеточные шашки....

... обычно придумывают игры где результат может быть выражен в виде целых чисел
и соответственно на одном и том же поле играют обе програмки просто меняются правом
первого хода..... суммарный результат по сумме 2 игр и есть результат.

думаю что мысль там где то есть.... главное что игрульку придумать
а придумать передачу данных игровому серверу неудобную для "шаловливых"
ручек и головы можно 8)))

ZaCo
10.01.2008, 02:16
а зачем игровой сервер? турнир-то не вечный, более того, для удобства придется и апи предоставлять для общения с сервером, зачем разработчика заставлять думать о сокетах к примеру? ну я не про это, легче собрать все программы и наложить для каждой условие: если с stdin считываем '1', то она делает первый шаг, если '0', то она считывает новую позицию от противника делающего первый шаг с входного потока, и выводит ответ на stdout. проверяющая программа просто разбивает программы на пары и в каждом "турнире" заводит два дочерних процесса pr1, pr2 и пайпами просто переписывает вывод одной на вход другой.

Delimiter
10.01.2008, 02:37
Ну видимо я уж совсем "губу раскатал" представил себе отражение игр в "реальном времени".... типа чтоб другим завидно было!

Разные языки программирования.... чем PHP то хуже ?

Главное чтоб стало традицией античата.... 8)) но это чисто мое мнение!

Ky3bMu4
14.01.2008, 00:49
Хех...простой алго шашек(до первой дамки+не умеет есть назад+ai vs ai =)).

slil.ru/25353348

Не хотел новую тему делать.