Обсуждение:Крестики-нолики

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Ошибка на картинке[править код]

на прилагаемой картинке -- ошибка! почему там ноликов больше, чем крестиков, если крестики ходят первыми??!

Кстати, да. Сейчас перерисую... #!George Shuklin 15:01, 22 сентября 2006 (UTC)[ответить]
Хе, заодно и в векторе получилось.#!George Shuklin 15:09, 22 сентября 2006 (UTC)[ответить]
Спасибо за картинку! Только жаль, что в ней не крестики, а нолики первыми ходят :( Что делать? Я по этой картинке даже фильм учебный хочу сделать! Natkabrown 07:35, 23 мая 2012 (UTC)[ответить]

алгоритм за нолики к нечией непашет[править код]

За нолики. Если противник сходил первым ходом в центр, ответить ходом в любой из углов, если противник сходит первым ходом не в центр, ответить ходом в центр. Каждым следующим ходом блокировать возможность построения противником очередной тройки, при возможности выбора предпочитая ходы в углы. — Ничья Данный алгоритм предполагает оптимальную игру противника. Естественно, если противник допускает ошибку, позволяющую следующим ходом построить тройку, её следует построить, но при правильной игре такое невозможно.


если пойти 9-1-7 то выйгрыш. icq 3079670

Крестики-нолики на практике[править код]

Кстати, если мы рассказываем на практике о крестиках-ноликах, но неужели было бы плохо показать на практике что это такое? Тем более что программа демонстрирует неизвестные ранее возможности/разновидности. Я и показал программу для игры в крестики-нолики. Разве это плохо? Тем более в наше время, когда сложно найти соперника для игры на бумаги, т.к. все за компьютерами постоянно сидят. Но кто-то решил, что люди не должны узнать на практике что такое "крестики-нолики". — Эта реплика добавлена участником Frato (о · в) 04:53, 9 апреля 2009

Потому что сейчас программ для игры очень много! А выбирать одну, и не самую простую - это реклама, которой здесь быть не должно. infovarius 15:04, 9 апреля 2009 (UTC)[ответить]
В этой статье я не видел ни одной ссылки ни на одну программу, хоть одна ссылка должна быть, иначе читатель останется в неведении Frato 21:21, 9 апреля 2009 (UTC)Frato[ответить]

Дерево игровых ситуаций[править код]

Я тут написал программу на graphviz'е: граф, отображающий дерево игровых ситуаций для крестиков-ноликов. Но я не придумал, как заставить Википедию отобразить эту программу, поэтому напишу ее сюда.

Кстати, в алгоритме небольшая неточность:
>Сделать первый ход в центральное поле... Если противник ответил ходом на сторону — он проиграл. Следует ответить ходом в один из двух несоседних углов.

На самом деле, можно ответить ходом в любой угол. Это следует из того, что
>Сделать первый ход в угол... Если противник ответил ходом на сторону, он проиграл. Следует ответить ходом в центр, сводя к предыдущей стратегии. — Выигрыш.

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

Кстати, было бы неплохо, если бы кто-нибудь рассмотрел случай, когда первый ход крестиками осуществляется на сторону.

<graphviz> digraph G{ rankdir=LR; size="1500,1500"; 1[shape=record,label="{||}|{||}|{||}"]; 2[shape=record,label="{x||}|{||}|{||}"]; 3[shape=record,label="{||}|{|x|}|{||}"]; 4[shape=record,label="{x|o|}|{||}|{||}"]; 5[shape=record,label="{x||o}|{||}|{||}"]; 6[shape=record,label="{x||}|{|o|}|{||}"]; 7[shape=record,label="{|o|}|{|x|}|{||}"]; 8[shape=record,label="{o||}|{|x|}|{||}"]; 9[shape=record,label="{x||o}|{||}|{x||}"]; 10[shape=record,label="{x||}|{|o|}|{||x}"]; 11[shape=record,label="{|o|}|{|x|}|{x||}"]; 12[shape=record,label="{o||x}|{|x|}|{||}"]; 13[shape=record,label="{x|o|o}|{||}|{x||}"]; 14[shape=record,label="{x||o}|{o||}|{x||}"]; 15[shape=record,label="{x||}|{|o|}|{o||x}"]; 16[shape=record,label="{x||}|{o|o|}|{||x}"]; 17[shape=record,label="{|o|o}|{|x|}|{x||}"]; 18[shape=record,label="{o|o|}|{|x|}|{x||}"]; 19[shape=record,label="{o||x}|{|x|}|{o||}"]; 20[shape=record,label="{o||x}|{o|x|}|{||}"]; 21[shape=record,label="{x|o|o}|{x||}|{x||}"]; 22[shape=record,label="{x||o}|{o||}|{x||x}"]; 23[shape=record,label="{x||x}|{|o|}|{o||x}"]; 24[shape=record,label="{x||}|{o|o|x}|{||x}"]; 25[shape=record,label="{x|o|o}|{|x|}|{x||}"]; 26[shape=record,label="{o|o|x}|{|x|}|{x||}"]; 27[shape=record,label="{o||x}|{x|x|}|{o||}"]; 28[shape=record,label="{o||x}|{o|x|}|{x||}"]; 29[shape=record,label="{x||o}|{o||}|{x|o|x}"]; 30[shape=record,label="{x|o|x}|{|o|}|{o||x}"]; 31[shape=record,label="{x||o}|{o|o|x}|{||x}"]; 32[shape=record,label="{x||}|{o|o|x}|{o||x}"]; 33[shape=record,label="{x|o|o}|{|x|}|{x||o}"]; 34[shape=record,label="{o||x}|{x|x|o}|{o||}"]; 35[shape=record,label="{o||x}|{x|x|}|{o|o|}"]; 36[shape=record,label="{x||o}|{o|x|}|{x|o|x}"]; 37[shape=record,label="{x|o|x}|{|o|x}|{o||x}"]; 38[shape=record,label="{x||o}|{o|o|x}|{x||x}"]; 39[shape=record,label="{x||x}|{o|o|x}|{o||x}"]; 40[shape=record,label="{x|o|o}|{x|x|}|{x||o}"]; 41[shape=record,label="{o|x|x}|{x|x|o}|{o||}"]; 42[shape=record,label="{o||x}|{x|x|x}|{o|o|}"]; 43[shape=record,label="{x||o}|{o|o|x}|{x|o|x}"]; 44[shape=record,label="{x|o|o}|{o|o|x}|{x||x}"]; 45[shape=record,label="{o|x|x}|{x|x|o}|{o|o|}"]; 46[shape=record,label="{o|x|x}|{x|x|o}|{o||o}"]; 47[shape=record,label="{x|x|o}|{o|o|x}|{x|o|x}"]; 48[shape=record,label="{x|o|o}|{o|o|x}|{x|x|x}"]; 49[shape=record,label="{o|x|x}|{x|x|o}|{o|o|x}"]; 50[shape=record,label="{o|x|x}|{x|x|o}|{o|x|o}"]; 1->2; 1->3; 2->4[label="win"]; 2->5[label="win"]; 2->6; 3->7[label="win"]; 3->8; 5->9; 5->12[label="drow possible",style="dashed"]; 6->10; 7->11; 4->11; 8->12; 9->13; 9->14; 10->15; 10->16; 11->17; 11->18; 12->19; 12->20; 13->21; 14->22; 15->23; 16->24; 17->25; 18->26; 19->27; 20->28; 22->29; 23->30; 24->31; 24->32; 25->33; 27->34; 27->35; 29->36; 30->37; 31->38; 32->39; 33->40; 34->41; 35->42; 38->43; 38->44; 41->45; 41->46; 43->47; 44->48; 45->49; 46->50; } </graphviz> Clothclub 15:29, 21 сентября 2009 (UTC)[ответить]

Может быть заменить на известный Википедии (при подстановке graphviz вместо cpp выдаёт ошибку)

digraph G{ 
rankdir=LR;
size="1500,1500";
1[shape=record,label="{||}|{||}|{||}"];
2[shape=record,label="{x||}|{||}|{||}"];
3[shape=record,label="{||}|{|x|}|{||}"];
4[shape=record,label="{x|o|}|{||}|{||}"];
5[shape=record,label="{x||o}|{||}|{||}"];
6[shape=record,label="{x||}|{|o|}|{||}"];
7[shape=record,label="{|o|}|{|x|}|{||}"];
8[shape=record,label="{o||}|{|x|}|{||}"];
9[shape=record,label="{x||o}|{||}|{x||}"];
10[shape=record,label="{x||}|{|o|}|{||x}"];
11[shape=record,label="{|o|}|{|x|}|{x||}"];
12[shape=record,label="{o||x}|{|x|}|{||}"];
13[shape=record,label="{x|o|o}|{||}|{x||}"];
14[shape=record,label="{x||o}|{o||}|{x||}"];
15[shape=record,label="{x||}|{|o|}|{o||x}"];
16[shape=record,label="{x||}|{o|o|}|{||x}"];
17[shape=record,label="{|o|o}|{|x|}|{x||}"];
18[shape=record,label="{o|o|}|{|x|}|{x||}"];
19[shape=record,label="{o||x}|{|x|}|{o||}"];
20[shape=record,label="{o||x}|{o|x|}|{||}"];
21[shape=record,label="{x|o|o}|{x||}|{x||}"];
22[shape=record,label="{x||o}|{o||}|{x||x}"];
23[shape=record,label="{x||x}|{|o|}|{o||x}"];
24[shape=record,label="{x||}|{o|o|x}|{||x}"];
25[shape=record,label="{x|o|o}|{|x|}|{x||}"];
26[shape=record,label="{o|o|x}|{|x|}|{x||}"];
27[shape=record,label="{o||x}|{x|x|}|{o||}"];
28[shape=record,label="{o||x}|{o|x|}|{x||}"];
29[shape=record,label="{x||o}|{o||}|{x|o|x}"];
30[shape=record,label="{x|o|x}|{|o|}|{o||x}"];
31[shape=record,label="{x||o}|{o|o|x}|{||x}"];
32[shape=record,label="{x||}|{o|o|x}|{o||x}"];
33[shape=record,label="{x|o|o}|{|x|}|{x||o}"];
34[shape=record,label="{o||x}|{x|x|o}|{o||}"];
35[shape=record,label="{o||x}|{x|x|}|{o|o|}"];
36[shape=record,label="{x||o}|{o|x|}|{x|o|x}"];
37[shape=record,label="{x|o|x}|{|o|x}|{o||x}"];
38[shape=record,label="{x||o}|{o|o|x}|{x||x}"];
39[shape=record,label="{x||x}|{o|o|x}|{o||x}"];
40[shape=record,label="{x|o|o}|{x|x|}|{x||o}"];
41[shape=record,label="{o|x|x}|{x|x|o}|{o||}"];
42[shape=record,label="{o||x}|{x|x|x}|{o|o|}"];
43[shape=record,label="{x||o}|{o|o|x}|{x|o|x}"];
44[shape=record,label="{x|o|o}|{o|o|x}|{x||x}"];
45[shape=record,label="{o|x|x}|{x|x|o}|{o|o|}"];
46[shape=record,label="{o|x|x}|{x|x|o}|{o||o}"];
47[shape=record,label="{x|x|o}|{o|o|x}|{x|o|x}"];
48[shape=record,label="{x|o|o}|{o|o|x}|{x|x|x}"];
49[shape=record,label="{o|x|x}|{x|x|o}|{o|o|x}"];
50[shape=record,label="{o|x|x}|{x|x|o}|{o|x|o}"];
1->2;
1->3;
2->4[label="win"];
2->5[label="win"];
2->6;
3->7[label="win"];
3->8;
5->9;
5->12[label="drow possible",style="dashed"];
6->10;
7->11;
4->11;
8->12;
9->13;
9->14;
10->15;
10->16;
11->17;
11->18;
12->19;
12->20;
13->21;
14->22;
15->23;
16->24;
17->25;
18->26;
19->27;
20->28;
22->29;
23->30;
24->31;
24->32;
25->33;
27->34;
27->35;
29->36;
30->37;
31->38;
32->39;
33->40;
34->41;
35->42;
38->43;
38->44;
41->45;
41->46;
43->47;
44->48;
45->49;
46->50;
}

Fractaler 17:16, 21 сентября 2009 (UTC)[ответить]

Да, конечно. Я думал, может быть кто-нибудь знает, какой нужно подставить тэг, чтобы википедия сразу отображала граф. Но так тоже ничего. Clothclub 04:24, 3 октября 2009 (UTC)[ответить]

Насчет анализа[править код]

Почему нет ветки когда крестики изначально могут сходить на сторону поля, а только либо в центр или в угол?

--- Там написано, что крестики ходят всегда рационально, а в алгоритме первый ход крестиками на сторону не считается рациональным.

Во-первых, там это не написано; во-вторых, из каких соображений определяется рациональность хода крестиков? Вообще, мне совершенно непонятно из каких соображений построен приведённый алгоритм: если - показать все возможные безошибочные партии для крестиков, то он явно неполный; если как пример оптимальной стратегии для крестиков, то он явно избыточный. В рисунке тоже содержатся ошибки. Например, после ходов: 1. Xa3; 0b3 стрелочка ведёт к положению, где крестики находятся на a1 и b2, а нолик всё на том же b3. Такое положение физически не может получится после данных ходов, даже если отразить или повернуть игровое поле. 217.172.18.157 07:40, 31 мая 2011 (UTC)[ответить]
Видимо примеры оптимальной стратегии для крестиков при рациональном сопротивлении ноликов. --S.J. 11:02, 31 мая 2011 (UTC)[ответить]

Дерево игровых ситуаций[править код]

Почему в заголовке рисунка стоит "Полное дерево игровых ситуаций", когда оно явно не полное?217.172.18.157 06:39, 31 мая 2011 (UTC)[ответить]

Варианты правил игры[править код]

Чтобы не было каши в голове, советую изредка посматривать на разновидности правил. То, что сейчас написано в разделе «Более длинные линии» — просто ужас, вызванный полным непониманием различий. Manslay 01:58, 28 сентября 2012 (UTC)[ответить]

Более длинные линии - n в ряд[править код]

Утверждение про ничейную смерть для 6 в ряд и существование стратегии достижения ничьей вторым игроком — весьма сильное утверждение. Насколько я помню, для 9 и более срабатывает элементарная стратегия полей соответствия, для 8 есть более сложная стратегия, но даже для 7 в ряд нет (не было?) чистого доказательства. Игроки гомоку нутром чуют, конечно, что 6 в ряд при оптимальной защите противника — недостижимая задача, но не надо это путать с математически точным доказательством наличия ничейной стратегии. Надо либо указать источник, либо изменить формулировку. --Renju player 07:48, 30 января 2013 (UTC)[ответить]

Дореволюционные названия[править код]

Давайте обсудим названия. Почему очерк Лейкина «Учебный день в немецкой школе» не является АИ? Потому что он уже переведён на современный язык, и вполне вероятно, что при этом «херики-оники» стали «крестиками-ноликами». Я нашёл исходное издание девятнадцатого века, посмотрю написание в нём. Аналогично Гиляров-Платонов, но для него исходного издания найти не удалось. --Renju player 08:17, 18 ноября 2013 (UTC)[ответить]

  1. ни на какой "современный язык" Лейкин быть переведён не мог, потому что Лейкин изначально писал на нём. Современный русский язык (СРЛЯ) - это тот язык, на котором ещё не писал Тредиаковский, но уже писал Пушкин, граница проходит примерно по Державину. См. статью Русский язык#Современный русский язык.
  2. в гугль-книгах легко находится скан второго тома книги Лейкина "Повѣсти, разсказы и драматическія сочиненія", напечатанного в 1871 году, в котором на 30 странице, в очерке "Учебный день в немецкой школе", и содержится упоминание "крестиков и ноликов". Там же, в гугль-книгах, доступен скан номера "Отечественных записок" за декабрь 1866 года, где на странице 531 напечатан тот же очерк, игра "крестики и нолики" упомянута на 552 стр. То же самое касается Гилярова-Платонова. А ещё в 1885 году вышла целая математическая статья "Игра въ крестики и нулики" за авторством Воронихина.
  3. даже если вдруг Лейкин и Гиляров-Платонов не являлись бы АИ, это никак не оправдывало бы орисс, будто название "херики-оники" существовало именно до реформы. Во-первых, легко убедиться в гугль-книгах, что и через десятилетия после реформы такое название изредка использовалось. Во-вторых, в словаре Даля ничего о реформе по понятным причинам не говорится. Зато в нём, прямо рядом с "хериками", упоминаются и "крестики". А вот "херики-оники" как раз не упоминаются вовсе.
  4. Реформы орфографии были реформировали, разумеется, лишь орфографию и напрямую не затрагивали лексику. Реформа правописания 1917-18 годов тут вообще ни к селу ни к городу, поскольку не затрагивала названия букв. Вот текст закона. Буквы х и о в учебниках стали называться просто "ха" и "о" вместо "хер" и "он" ещё в середине XIX века, причём процесс пошёл с XVIII века, подробнее см. в Названия букв русского алфавита#История применения.

131.107.192.225 20:32, 18 ноября 2013 (UTC)[ответить]

Всё верно, действительно упоминаются крестики-нолики (а не херики-оники) у Лейкина. Был неправ. В свете этого просьба: не могли бы вы переписать историю наименования целиком, чтобы она была корректна? --Renju player 15:08, 19 ноября 2013 (UTC)[ответить]