Имя: Пароль:
IT
Веб-мастеринг
Как такое может работать? Шахматная программа из 1024 байт
0 D_Pavel
 
26.09.12
06:16
Как она может думать при таком маленьком размере?



         <canvas id="c"></canvas>
         <script>for(B=i=y=u=b=i=5-5,x=10,I=[],l=[];B++<304;I[B-1]=B%x?B/x%x<2|B%x<2?7:B/x&4?0:l[i++]="ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM@G@TSb~?A6J57IKJT576,+-48HLSUmgukgg OJNMLK  IDHGFE".charCodeAt(y++)-64:7);function X(c,h,e,s){c^=8;for(var o,S,C,A,R,T,G,d=e&&X(c,0)>1e4,n,N=-1e8,O=20,K=78-h<<9;++O<99;)if((o=I[T=O])&&(G=o^c)<7){A=G--&2?8:4;C=o-9?l[61+G]:49;do if(!(R=I[T+=l[C]])&&!!G|A<3||(R+1^c)>9&&G|A>2){if(!(R-2&7))return K;n=G|(c?T>29:T<91)?o:6^c;S=(R&&l[R&7|32]*2-h-G)+(n-o?110:!G&&(A<2)+1);if(e>h||1<e&e==h&&S>2|d){I[T]=n;I[O]=0;S-=X(c,h+1,e,S-N);if(!(h||e-1|B-O|T-b|S<-1e4))return W(),c&&setTimeout("X(8,0,2),X(8,0,1)",75);I[O]=o;I[T]=R}if(S>N||!h&S==N&&Math.random()<.5)if(N=S,e>1)if(h?s-S<0:(B=O,b=T,0))break}while(!R&G>2||(T=O,(G||A>2|(c?O>78:O<41)&!R)&&++C*--A))}return-K+768<N|d&&N}function W(){i="<table>";for(u=18;u<99;document.body.innerHTML=i+=++u%x-9?"<th width=60 height=60 onclick='I[b="+u+"]>8?W():X(0,0,1)'style='font-size:50px'bgcolor=#"+(u-B?u*.9&1||9:"d")+"0f0e0>&#"+(I[u]?9808+l[67+I[u]]:160):u++&&"<tr>")B=b}W()</script>


1 D_Pavel
 
26.09.12
06:17
Может как-то с сервером связывается, но я сниффером проверял, вроде ниче не отправляет. Не понятно...
2 Андрюха
 
26.09.12
06:23
Прикольные шахматы )))
3 DJ Anthon
 
26.09.12
06:25
(2) простите, куда это вставлять? ;)
4 D_Pavel
 
26.09.12
06:26
(3) В пустой файл с расширением html
5 D_Pavel
 
26.09.12
06:26
(2) Как они работают!!?
6 Капитан Смоллет
 
26.09.12
06:38
7 Godofsin
 
26.09.12
06:39
(6) прикольно
8 DJ Anthon
 
26.09.12
06:39
вот оно, торжество оптимизации!
9 D_Pavel
 
26.09.12
06:40
Если бы виндовс делал тот же программист, сейчас бы мы могла загрузить с дискеты
10 Godofsin
 
26.09.12
06:41
да всяко связь с сервером
11 Капитан Смоллет
 
26.09.12
06:41
+(6)
A Mexican software developer ?scar Toledo Guti?rrez wrote Toledo Javascript Chess (http://bit.ly/nanoChess), the world's smallest chess program in JS.

This version won the first JS1K contest and defeated several hundreds of novice players along the world. Its just crazy how small this game is - in fact I'm going to post the entire game source code in this post just so you understand what kind of feat this was (more info here http://bit.ly/MzcwO5).
12 D_Pavel
 
26.09.12
06:46
(10) Я не нашел связи с сервером.
13 Ткачев
 
26.09.12
06:54
Я проиграл :(
14 lxndr
 
26.09.12
06:56
она ракироваться не умеет (
15 Ткачев
 
26.09.12
07:01
Работает без интернета, выдергивал сетевые кабеля все работает.
16 Один С
 
26.09.12
07:03
и чо, все шахматные правила в этих девяти строчках?
17 Рэйв
 
26.09.12
07:08
Наверное внутри винды где-то спрятана шахматная закладка и оно ее юзает:-)
18 snegovik
 
26.09.12
07:08
А как картинки-то прорисованы, в смысле шахматные фигуры???
19 Светлый Гений
 
26.09.12
07:15
(0)суровый код )
20 D_Pavel
 
26.09.12
07:16
(14) да, косяк есть такой.
(16) тоже удивляюсь
(18) Как видишь, прорисованы
21 D_Pavel
 
26.09.12
07:16
Как-то
22 Cashtane
 
26.09.12
07:17
(0) Да ну на...
23 D_Pavel
 
26.09.12
07:21
Фигура наверное закодированы в этой строке:
"ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM@G@TSb~?A6J57IKJT576,+-48HLSUmgukgg OJNMLK  IDHGFE"
24 D_Pavel
 
26.09.12
07:22
ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM - это расстановка фигур в начальную позицию
25 ink1981
 
26.09.12
07:22
мля происки сатаны
26 DJ Anthon
 
26.09.12
07:28
(23) фигуры - это стандартные символы, че их кодировать?
27 Balabass
 
26.09.12
07:28
(26) Это в спец симовлах чтоли?
28 Balabass
 
26.09.12
07:29
чет там только вязь да математики немного
29 DJ Anthon
 
26.09.12
07:31
а ведь код ровно килобайт
30 Ткачев
 
26.09.12
07:33
(29)Килобайт = 1024, а тут 1064
31 DJ Anthon
 
26.09.12
07:36
(30) чисто код, без рамок
32 Ткачев
 
26.09.12
07:40
В 1с разделитель команд ";", в бейсике ":", а тут ?
33 Godofsin
 
26.09.12
07:40
автор данного произведения несомненно заслуживает уважения. Зайдите по ссылке в (6), там куча всяких разных игр и приколюх
34 pilot_iv
 
26.09.12
07:41
это сильно
35 Godofsin
 
26.09.12
07:45
и все же, как описан алгоритм ходов компа?
36 DJ Anthon
 
26.09.12
07:48
разбирайте по косточкам )) но, блин, шахматы впихнуть в килобайт, да еще и с графической частью, это пипец. круче жести не видел. даже квейк четырехкилобайтный отдыхает, на асме когда-то контесты были 4к и 64к. или 64килобайтный, не помню уже...
37 Хромой
 
26.09.12
08:04
у кого есть линукс, потестите
38 makfromkz
 
26.09.12
08:07
это здорово, только малюююсенький минус: читабельности этого кода ровно NULL
39 Сержант 1С
 
26.09.12
08:08
нужен NS )
40 Фрэнки
 
26.09.12
08:09
но это все-таки скрипт, который можно прочитать без декомпиляции
41 D_Pavel
 
26.09.12
08:10
(26) Какие символы?
42 D_Pavel
 
26.09.12
08:11
О. Точно символы простые. Тогда не интересно ((((9
43 D_Pavel
 
26.09.12
08:11
?

?

?

?

?

?

?
44 Скользящий
 
26.09.12
08:12
поиграл, они меня еще и выиграли! Совсем потерял закалку. )
45 al_zzz
 
26.09.12
08:13
Баг нашел - не умеет рокировку делать. :-)
46 PuhUfa
 
26.09.12
08:14
(42) т.е. для тебя проблема только в том как нарисовать фигурки? -)
47 D_Pavel
 
26.09.12
08:15
да, зато если пешкой до конца дойти, то она в ферзя превращается
48 D_Pavel
 
26.09.12
08:15
(46) Нет
49 D_Pavel
 
26.09.12
08:15
В этом нет проблемы
50 Xapac_2
 
26.09.12
08:19
(0)
приводи код правильно

<canvas id="c">
</canvas>
         
   <script>
   for(B=i=y=u=b=i=5-5,x=10,I=[],l=[];B++<304;I[B-1]=B%x?B/x%x<2|B%x<2?7:B/x&4?0:l[i++]="ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM@G@TSb~?A6J57IKJT576,+-48HLSUmgukgg OJNMLK  IDHGFE".charCodeAt(y++)-64:7);
   function X(c,h,e,s)
   {
       c^=8;
       for(var o,S,C,A,R,T,G,d=e&&X(c,0)>1e4,n,N=-1e8,O=20,K=78-h<<9;++O<99;)
           if((o=I[T=O])&&(G=o^c)<7)
           {
               A=G--&2?8:4;C=o-9?l[61+G]:49;
               do
                   if(!(R=I[T+=l[C]])&&!!G|A<3||(R+1^c)>9&&G|A>2)
                   {
                       if(!(R-2&7))return K;
                       n=G|(c?T>29:T<91)?o:6^c;
                       S=(R&&l[R&7|32]*2-h-G)+(n-o?110:!G&&(A<2)+1);
                       if(e>h||1<e&e==h&&S>2|d)
                       {
                           I[T]=n;I[O]=0;
                           S-=X(c,h+1,e,S-N);
                           if(!(h||e-1|B-O|T-b|S<-1e4))return W(),c&&setTimeout("X(8,0,2),X(8,0,1)",75);
                           I[O]=o;
                           I[T]=R
                       }
                       if(S>N||!h&S==N&&Math.random()<.5)
                       if(N=S,e>1)if(h?s-S<0:(B=O,b=T,0))break}
               while(!R&G>2||(T=O,(G||A>2|(c?O>78:O<41)&!R)&&++C*--A))
           }
           return-K+768<N|d&&N
   }
   function W()
   {
       i="<table>";
       for(u=18;u<99;document.body.innerHTML=i+=++u%x-9?"<th width=60 height=60 onclick='I[b="+u+"]>8?W():X(0,0,1)'style='font-size:50px'bgcolor=#"+(u-B?u*.9&1||9:"d")+"0f0e0>&#"+(I[u]?9808+l[67+I[u]]:160):u++&&"<tr>")
       B=b
   }
   W()
   </script>
51 PuhUfa
 
26.09.12
08:19
Там, кстати, 2 варианта шахмат
http://js1k.com/2010-first/demos#id699
http://js1k.com/2010-first/demos#id750
52 D_Pavel
 
26.09.12
08:22
(51) В чем разница?
53 Xapac_2
 
26.09.12
08:23
фигурки, это тупо символы шрифта
charCodeAt(y++)-64
54 Ткачев
 
26.09.12
08:24
(52)
Tiny Chess.
Play chess against computer with queen-only promotion and without castling or en passant.
Click origin square and then target square to move piece, it will validate moves.
Update 1: Big chessboard with Unicode graphics, illuminates piece to move.
Update 2: Better gameplay and variety. Now shows immediately user's move. Thanks to @romancortes for optimization tips.
Update 3: Illuminates last piece moved. Enhanced strength to evade fool and scholar's mate. Thanks to @kamathln for optimization tip.
Update 4: Computer now prefers to checkmate instead of stalemate. I did it after reading the article http://malevolent.com/524
55 ZoRN
 
26.09.12
08:24
Локально работать не будет !
56 Xapac_2
 
26.09.12
08:25
(55)у меня работает
57 Ткачев
 
26.09.12
08:26
(55)->(15)
58 al_zzz
 
26.09.12
08:27
http://vfl.ru/fotos/99e11689967043.html - я его сделал!
59 Скользящий
 
26.09.12
08:27
локально работает. Еще меня и обыграла, сволочь. )
60 D_Pavel
 
26.09.12
08:31
Я обыграл его!
61 D_Pavel
 
26.09.12
08:34
(58) Поздравляю, у тебя тоже больше ума чем 1024 Кб! )))
62 D_Pavel
 
26.09.12
08:34
Тоесть байта
63 al_zzz
 
26.09.12
08:39
(61) Спасибо! Я догадывался...
64 ZoRN
 
26.09.12
08:40
(61) - 1023
65 ZoRN
 
26.09.12
08:43
A:20 ?@87=05B 45:;0@0F8N 1956
Москва признает декларацию 1956
66 ZoRN
 
26.09.12
08:43
ByteBuffer
67 vde69
 
26.09.12
08:53
прикольно

ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM - это фигуры


@G@TSb~?A6J57IKJT576,+-48HLSUmgukgg OJNMLK  IDHGFE - а это наверно ходы для фигур
68 vde69
 
26.09.12
08:59
только я вот не понял где тут в коде устанавливается шрифт "MS Mincho"
69 Godofsin
 
26.09.12
09:01
(58) аналогично) туповат несколько...
70 D_Pavel
 
26.09.12
09:05
(68) Наверное юникод
71 vde69
 
26.09.12
09:07
(70) ГДЕ ????

в тексте нет такого слова, а других способов сменя шрифта я не знаю, покажите ГДЕ устанавливается шрифт...
72 Сказочный Баобаб
 
26.09.12
09:12
у меня в html не заработала.
Как код вставить?

И опять же как ходить - тока фигура выделяется
73 VladZ
 
26.09.12
09:13
(50) Хм.. Для меня - это китайская грамота...
74 k1us181b
 
26.09.12
09:17
(72) первый щелчок по клетке с фигурой.
второй - щелчок по клетке куда встанет фигура
75 D_Pavel
 
26.09.12
09:18
(71) Не надо ниче там устанавливать или менять. Символ получается по коду
76 y88
 
26.09.12
09:19
(0) спасибо, супер! Буду расковыривать :)
(71) выводится спец символ в формате &#код_символа
77 D_Pavel
 
26.09.12
09:21
(72) Попробуй другой браузер. В последней Мозиле и IE работает.
78 Сказочный Баобаб
 
26.09.12
09:23
заработал - 3 раза проиграл.
на работе проиграли все. (((
100% вызываются Dll
79 Никола_
Питерский
 
26.09.12
09:23
Кто нить может рокировку добавить ?
80 Сказочный Баобаб
 
26.09.12
09:24
судя по тому что народ не понял как это работает... - тут нет хакеров и профессионалов в програмировании
81 Сказочный Баобаб
 
26.09.12
09:25
для того что бы понять - не вызываются ли Dll - на на Линухе запустить.
кто пробовал там?
82 D_Pavel
 
26.09.12
09:25
(78) Не вызываются
83 Сказочный Баобаб
 
26.09.12
09:26
(82) почему? Проверяли?
Шахматы то есть!
84 D_Pavel
 
26.09.12
09:27
(83) Потому что настройки безопасности браузера не позволяют вызвать DLL из скрипта
85 Сказочный Баобаб
 
26.09.12
09:27
кто на Линухе пробовал?
86 Zubizub
 
26.09.12
09:28
(84) отключи браузер
87 vde69
 
26.09.12
09:28
(78) мда, ну и работа у тебя (и работники)...
прога играет на самом приметивном уровне, тупо считает сумму оставшихся фигур...

собственно как работает прога более менее понятно, автор молоток!
88 D_Pavel
 
26.09.12
09:28
(86) зачем?
89 dm77
 
26.09.12
09:28
(85) работает
90 D_Pavel
 
26.09.12
09:29
(87) Считает на один ход вперед? Или на два? Я что-то не очень понял
91 Venom
 
26.09.12
09:30
(18) шрифт такой
92 vde69
 
26.09.12
09:31
(90) видимо на 1, простую жертву с последующим матом пропустил
93 vde69
 
26.09.12
09:31
(91) шрифт "MS Mincho"
94 Сказочный Баобаб
 
26.09.12
09:33
(87)нормальные работники - отличные проги.
и как работает - не понятно - не догнали
95 Сказочный Баобаб
 
26.09.12
09:33
96 Stim
 
26.09.12
09:35
random()

думает на ход вперед, использует рандом
97 тшл
 
26.09.12
09:47
на маке работает
98 Starhan
 
26.09.12
09:52
еее с 8го раза победил. Шахматы напрочь забыл :(
99 Stim
 
26.09.12
09:52
какую кодировку ставить на опере?
100 Zubizub
 
26.09.12
09:53
100
101 Кирпич
 
26.09.12
09:53
Ахринеть. Снимаю шляпу.
102 Stim
 
26.09.12
09:54
а в 12 строчка можно все УПП переписать :)
103 Zubizub
 
26.09.12
09:55
(102) так чего ты ждешь?
104 mzelensky
 
26.09.12
09:55
(0) я с этой ерундовиной сыграл в ничью :(
105 ssh2006
 
26.09.12
09:58
Зашел с айфона, включил авиарежим - работает
106 y88
 
26.09.12
09:59
да там чистый JavaScript - он везде будет работать
107 Никола_
Питерский
 
26.09.12
10:00
Ну так что рокировочку никто не сможет прикрутить ?
108 y88
 
26.09.12
10:01
(107) жги еще :)
109 Сказочный Баобаб
 
26.09.12
10:05
мда....чуствую тусующиеся здесь проги вирус не напишут....
110 D_Pavel
 
26.09.12
10:07
(109) Я написал вирус.
111 Волшебник
 
26.09.12
10:17
(0) Хреново играет. Рокировку не знает.
Я ей мат поставил как нефиг делать
http://ximage.ru/data/imgs/1348640218.jpg
112 vde69
 
26.09.12
10:20
и взятие на проход не знает!!!
113 Сказочный Баобаб
 
26.09.12
10:24
Плохо? да?
А то что весь отдел проиграл!
114 vde69
 
26.09.12
10:26
(113) это говорит о том что в отделе играют на порядок хуже Волшебника (точнее вообще не умеют играть)

программа играет на уровне 6-8 летнего ребенка который просто играет, но разумеется никогда в секцию не ходил
115 Ork
 
26.09.12
10:27
116 Волшебник
 
26.09.12
10:29
(115) У меня мат красивее. С двойным шахом, в миттельшпиле, король в центре доски
117 Сказочный Баобаб
 
26.09.12
10:29
что такое мительшпиль - центр игры что ли?
118 Волшебник
 
26.09.12
10:30
119 D_Pavel
 
26.09.12
10:30
(111) Нашел с кем тягаться, с программой 1-килобайтной! Еще и скриншот выложил, вдруг не поверят что ты победил ее ))))
120 Волшебник
 
26.09.12
10:30
(119) Да, мне даже немного стыдно :)
121 Сказочный Баобаб
 
26.09.12
10:30
(118)я угадал !
122 D_Pavel
 
26.09.12
10:32
Сложность не в том чтобы ее победить, а в том чтобы подобную написать, или хотя бы понять как написали эту.
123 y88
 
26.09.12
10:33
Кстати, можно попробовать вставить в 1С html страницу
А лучше переписать на чистом 1С с рокировкой и дебютами :)
124 D_Pavel
 
26.09.12
10:34
(123) Попробуй сначала без рокировок
125 D_Pavel
 
26.09.12
10:34
Хотя бы перевести готовую на язык 1С
126 Omskdizel
 
26.09.12
10:42
(111) Дак в описании на страничке демки так и написано, что без рокировки и взятия проходных пешек.
127 Omskdizel
 
26.09.12
10:43
(123) Дак есть же уже на 1С
128 Никола_
Питерский
 
26.09.12
10:48
(125) NS вроде же писал шахматы на 1С и помоему там не так много кода было !
Но здесь конечно шедевральное исполнение минимизации )))
129 Волшебник
 
26.09.12
11:09
Ходы рокировка и "взятие на проходе" сильно отличаются от остальных ходов. Вероятно, они не были реализованы специально, чтобы не увеличивать программный код.

У рокировки вообще много правил, которые отличают её от обычного хода:

* Двигаются сразу две фигуры (король и ладья). При обычном ходе двигается только одна фигура, которая может дополнительно кого-то скушать или превратиться в ферзя/другую фигуру, если это пешка, дошедшая до последней горизонтали.

* Король и ладья не должны были ходить. При обычном ходе предыдущие ходы не имеют значения. Для взятия на проходе тоже важно знать предыдущий ход.

* Король не должен быть под шахам, проходить битое поле и вставать под шах (ладья может быть под ударом и может проходить битое поле). Рокировка считается ходом короля. При обычном ходе король может уйти из-под шаха.

* Между королём и ладьём не должно быть других фигур.

Дополнительно:
* На турнире при рокировке первым надо брать короля, а не ладью.
* В записи рокировка обозначается 0-0 (короткая рокировка) или 0-0-0 (длинная)
* По-английски рокировка обозначается "castling", что можно перевести как "сделать зАмок" или "спрятаться в замок"
130 vde69
 
26.09.12
11:12
а еще я не понял можно-ли пешку провести в ферзя

(125) http://infostart.ru/public/18951/ с рокировками и взятием на проход
131 МишКа
 
26.09.12
11:16
Тоже поиграл. Программа рассчитывает 3 полухода.
132 План счетов
 
26.09.12
11:17
133 МишКа
 
26.09.12
11:20
Удивительна не программа. Удивительны одинэснэги, которые умудрились ей проиграть.
134 Sh1ko
 
26.09.12
11:25
Ну чо, господа 1с-ники. Кто восстановит честь профессии, напишет аналог УПП, хотя бы в 1 МБ?-)
135 anastasia1188
 
26.09.12
11:30
Выиграла, на мой взгляд первые ходы вообще случайны
136 sergeante
 
26.09.12
11:32
Положили сервак, да?
137 МишКа
 
26.09.12
11:38
(136) Какой сервак?
138 Omskdizel
 
26.09.12
12:00
(130) Я проводил, но там тоже документированное ограничение, превращается только в ферзя. Остальные варианты бывают очень редко конечно, потому сие гораздо меньше влияет на игру, чем отсутствие рокировки

По ощущениям первые ходы рандомно, бывают позиции, когда алгоритм не дает приоритета и двигает одну и ту же фигуру, но ближе к окончанию пободрее начинает играть. Т.е. проще всего ее передвигать в начале и середине, иначе будет трудновато при невысоком уровне игры.
139 Omskdizel
 
26.09.12
12:12
Интересно посмотреть, как оно стандартные окончания двигает :) Типа мата двумя слонами или конем и слоном :)
140 Волшебник
 
26.09.12
12:14
(139) Мне кажется, она не сможет поставить мат королём и ладьёй.
141 JesteR
 
26.09.12
12:17
С 1го раза сделал :) уффффф
Мой второй разряд выстоял против 10 строчек кода ))))
142 vde69
 
26.09.12
12:20
(140) а королем и двумя слонами :))))

а интересно защиту от прохода крайней пешки осилит? там где пат есть :)
143 МишКа
 
26.09.12
12:25
(140) (142) Вы о чем? Какие стандартные окончания. Тупо три полухода и все.
144 Omskdizel
 
26.09.12
12:28
(143) Ну хочется же поверить в чудо :)
145 МишКа
 
26.09.12
12:32
(144) Я проверял. Ловил ферзя на 2 хода. Отсюда вывод - 3 полухода.
146 Сказочный Баобаб
 
26.09.12
13:07
(135)а ты красивая!
147 Сказочный Баобаб
 
26.09.12
13:08
+(146) и умная... странно...
148 DGorgoN
 
26.09.12
14:02
На лине не работает
149 Никола_
Питерский
 
26.09.12
14:02
(148) Все работает !
150 DGorgoN
 
26.09.12
14:04
(149) В аспе не работает. Хотя может чего-нибудь не хватает.
151 Agent ООЗ
 
26.09.12
14:06
тупой рандом по правилам с перебором вариантов.
152 Sayshal
 
26.09.12
14:45
Надо попробовать
153 DGorgoN
 
26.09.12
14:46
Выиграл )
154 МишКа
 
26.09.12
14:49
(151) В свое время "тупой рандом по правилам с перебором вариантов" победил Каспарова.
155 Pro-tone
 
26.09.12
15:18
156 Волшебник
 
26.09.12
15:19
(154) Если ты намекаешь на Deep Blue, то тупого рандома там не было.
157 МишКа
 
26.09.12
15:28
(156) На него и намекаю. Программа там была, конечно, посложнее. Но, основная техническая характеристика, за счет которой и был достигнут выигрыш - глубина перебора.
158 JesteR
 
26.09.12
15:31
Пешка по умолчанию меняется на Ферзя
159 Волшебник
 
26.09.12
15:39
(157) В шахматах важен баланс между шириной и глубиной перебора, поскольку дерево шахматных позиций практически бесконечно (в практическом смысле). Но там не было рандома!
160 vde69
 
26.09.12
16:00
Давно это было:

самый короткий вирус 52 байта для 86х процов

Dinky.52, автор Игорь Данилов
161 МишКа
 
26.09.12
16:00
(159) Какая-такая глубина-ширина? DeepBlue перебирал ВСЕ варианты на глубину 15 полуходов (если не ошибаюсь). За счет чего, повторюсь, и выиграл.
И что значит не было рандома? Если в результате пересчета получалось несколько одинаковых вариантов, каким образом, по-твоему, осуществлялся выбор?
162 Волшебник
 
26.09.12
16:09
(161) Ты ошибаешься. На глубину 15-20 ходов он перебирал только форсированные варианты. Он анализировал 200 млн позиций в секунду, т.е. за секунду он сплошняком перебирал первые 7-8 полуходов в зависимости от позиции, а потом наступал "комбинационный взрыв" и при самом лучшем раскладе он мог углубиться ещё на 1-2 полухода, т.е. до 9-10, потому что 11-й полуход потребовал бы около часа обдумывания. Это для сплошного перебора ВСЕХ вариантов. Если поделить это на 2 и получить ходы, то имеем максимум 5-6 полных ходов, что очень мало для игры чемпионского уровня.
163 Волшебник
 
26.09.12
16:10
(161) Если сравнивать два действительных числа (результат оценки позиции), то вероятность совпадения очень мала, просто мизерна.
164 rs_trade
 
26.09.12
16:16
насколько я понял, костяк алгоритма это рекурсивный вызов функции Х с различными параметрами
165 Flyd-s
 
26.09.12
16:17
рокировка не работает
166 rs_trade
 
26.09.12
16:19
(165) да ты что!
167 Radion
 
26.09.12
16:36
(166) выиграл) рокировка не делается )
168 rs_trade
 
26.09.12
16:38
(167) об этом написано в каждом втором посте.
169 Radion
 
26.09.12
16:42
(168) второй раз выигрыл. после того даже как зевнул фигуру)
170 Xapac_2
 
26.09.12
16:45
а вообще алгоритм достаточно простой
тупо спрашивается клик куда фигурой сходить, если все путем, то запустить цикл хода компа. и завершить обработку, ждем ответной реакции от пользователя.
171 Xapac_2
 
26.09.12
16:45
а код хрень.
"написать код понятный машине не сложно, вы попробуйте написать код понятный человеку"
172 aka MIK
 
26.09.12
16:46
Хух, еле победил )
173 y88
 
26.09.12
16:49
(171) ты не в теме - это код до 1к
174 ptiz
 
26.09.12
16:50
А у вас фигурки шахмат, судя по скринам? А у меня просто квадратики. :(
175 DJ Anthon
 
26.09.12
16:51
(168) на мисте негласное правило. после сотки не читать посты
176 DJ Anthon
 
26.09.12
16:51
(174) а у тя линух?
177 Xapac_2
 
26.09.12
16:51
(173)пф, это не байт код. я ща тебе "напишу" платформу, шахматы в которой будут писаться в одну строчку, аля.

НапрограммироватьШаматы().

и что я на коне?
178 DJ Anthon
 
26.09.12
16:51
тролль детектед
179 rs_trade
 
26.09.12
16:52
(170) ну наконец то хоть один хакер появился в ветке. а можно маленький вопросик про алгоритм хода компа? где он и каков он?
180 Xapac_2
 
26.09.12
16:53
(179)за умеренную плату, могу вам его перевести. скажем так 10 000 рублей авансом.
181 rs_trade
 
26.09.12
16:54
(178) скорее д'артаньян.
182 aka MIK
 
26.09.12
16:54
(0) И в 1С ее легко встроить )
183 rs_trade
 
26.09.12
16:54
(180) за кривые понты? за это не деньги получают обычно. бугага.
184 Xapac_2
 
26.09.12
16:57
(183)значит не сильно вам надо.
185 ptiz
 
26.09.12
17:00
(176) WinXP, под IE и под Оперой квадратики
186 pochemu
 
26.09.12
17:00
(0) ТС случаем не взламывает компы этим скриптом?
187 y88
 
26.09.12
17:01
(185) WinXP SP3 + IE8 = работает
188 DJ Anthon
 
26.09.12
17:01
а еще там нет правила 50/150 ходов и трех повторений
189 DJ Anthon
 
26.09.12
17:01
(185) сборка?
190 АНДР
 
26.09.12
17:02
191 ptiz
 
26.09.12
17:07
(189) Да, от самого Microsoft, лицензионная сборка :)
192 DJ Anthon
 
26.09.12
17:13
(190) о да, я недавно нашел косяк в яве. оказалось, промсвязьбанк не работает с вин7 х64. при загрузке софта с сайта пишет ошибка загрузки календар.джсп. в процессе перезвона с техподдержкой выяснили, что ни версия явы, ни ее разрядность ни при чем, косяк воспроизводится на чистой тачке на любой версии явы, однако на ХР и на х32 все работает. они предупреждали, что с 64разрядной ЯВОЙ система не будет работать с токенами, оказалось, работает. а причину мы так и не нашли. косяк на их сайте. слава аллаху, нашли обход - надо в настройках явы выключить кеширование. полдня коту под хвост из-за нее ((
193 sda553
 
26.09.12
17:46
Тут время надо поразбираться, но сама шахматнаятпрограмка здесь в обертке, я бы в функции w()  заменил бы innerhtml на какую нибудь глобаль и глянул бы, что за текст там собрался. И вот этот текст уже бы и был нужной програмкой
194 sda553
 
26.09.12
17:52
Из того что я вижу на первый взгляд, это то, что этот код собирает текст другой программы и код надо смотреть уже там
195 Stim
 
26.09.12
17:53
(194) без интернета тоже работает
196 sda553
 
26.09.12
17:56
(195) я знаю
Я имею в виду что этот код собирает текстовую строку которая является намного более длиным и большим текстом настоящей шахматной программы
197 sda553
 
26.09.12
17:58
По сути, вначале была написана шахмтная программа, а потом под нее был написан алгоритм, который ее так круто заархивировал. И получился самораспаковщик на 1 кб
198 rs_trade
 
26.09.12
17:58
(196) как насчет версии в (164) ?
199 Habist
 
26.09.12
17:58
(194) Ничего подобного, вот правила размещения программ на этом сайте http://js1k.com/2012-love/rules, основное правило - код должен занимать меньше 1 кб, и никаких ссылок, никаких внешних ресурсов
200 sda553
 
26.09.12
17:59
(198) я не отрицаю рекурсивные вызовы, без них ни один архиыатор не построишь
201 sda553
 
26.09.12
18:00
(199) смотри (196) и (197)
202 rs_trade
 
26.09.12
18:01
(200) а мне показалось что функция Х и есть мозг проги.
203 rs_trade
 
26.09.12
18:02
разматывать ее только лениво
204 sda553
 
26.09.12
18:02
(202) нет, она собират рекурсивно текст другой проги
205 rs_trade
 
26.09.12
18:06
(204) из чего собирает?
206 Habist
 
26.09.12
18:09
(198) пардон, вначале не уловил идею, да самораспаковщик вполне может быть
207 rs_trade
 
26.09.12
18:11
единственное что есть, это ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM@G@TSb~?A6J57IKJT576,+-48HLSUmgukgg OJNMLK  IDHGFE


ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM - это как я понимаю начальная расстановка фигур. дальше что, хз. может правила передвижения фигур.
208 Шалун
 
26.09.12
18:13
зачетно) можно ли её в свои конфигурации вставлять) для развлечения клиентов
209 МишКа
 
26.09.12
18:13
(162) не, это ты ошибаешься. здесь посмотри:
http://en.wikipedia.org/wiki/Deep_Blue_(chess_computer)
Deep Fritz сейчас считает 17-18 полуходов на двух процессорах Intel Core 2 Duo

(163)
Число-то большое, но примитивная программа (а у DeepBlue была примитивная программа) будет часто оценивать позиции как абсолютно одинаковые.
210 Zubizub
 
26.09.12
18:15
(120) шотофоп небось
211 Один С
 
26.09.12
18:20
NS приходил?
нет? тогда я попозже зайду..
212 IOL
 
26.09.12
18:47
Таки получилось их удалить с 5 раза, мекософтовские которые с 7 виндой идут на 5 уровне вылетают на раз. С этими повозится пришлось. Прикольно блин.
213 IOL
 
26.09.12
18:49
Да таки думаю правительство ктонить может заменить на маленький скрипт :-), если это не фейк
214 Капитан Смоллет
 
26.09.12
20:02
(213) Ну какой фейк. Я указывал в (6), там есть конкурс на самые, самые на "Си". Чувак, свой же сишный код, переписал на яву. Там подробно описано.
215 opty
 
26.09.12
20:08
Вроде самая маленькая шахматная программа (движок без GUI) это Micro-Max
Скомпилированная меньше 7 килобайт , исходник  вот
http://home.hccnet.nl/h.g.muller/max-src2.html
216 syktyk
 
26.09.12
20:14
(0) Рокировки не делает! :)
217 Злопчинский
 
26.09.12
20:19
вообще такое выкладывать - это бфяка.. неустойчиыве личности вроде меня могут застрелиться ;-)
218 Zubizub
 
26.09.12
20:21
(217) вот мучайся теперь :)
219 Zubizub
 
26.09.12
20:21
(216) да выяснили уже давно
220 Скользящий
 
26.09.12
20:29
(217) это скорее NS застрелится. )
221 shpioleg
 
26.09.12
21:02
(0) Взятие на проходе не работает, рокировка тоже не делается. Вместо фигур пустые квадраты, но прога играет настолько слабо, что и нет смысла видеть фигуры.
222 sda553
 
26.09.12
21:12
Доска рисуется следующим кодом, для фигур графики нет

<table><tbody><tr><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th></tr><tr><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th></tr><tr><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th></tr><tr><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th></tr><tr><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th></tr><tr><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th></tr><tr><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th></tr><tr><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0"  height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th></tr><tr></tr></tbody></table>
223 sda553
 
26.09.12
21:14
вместо вопросительных знаков соответствующие спецсимволы шахматные
224 Волшебник
 
26.09.12
21:17
(222) Ты охренел? Больше так не делай
225 Волшебник
 
26.09.12
21:18
Используйте http://paste.pro для вставки кусков текста/кода.
226 Hans
 
26.09.12
21:31
Мне эта программа мат поставила. =)
227 SnarkHunter
 
26.09.12
21:32
(226)Совсем плохой
228 Капитан Смоллет
 
26.09.12
21:34
(221) Попробуй написать лучше и уложиться в правила конкурса < 1024.
229 Юлия Цветочек
 
26.09.12
21:41
(6) Выиграла!)
230 Волшебник
 
26.09.12
21:42
(226) Значит ты не думаешь больше, чем на 1-2 хода вперёд. Кстати, в шахматах слово "ход" означает два полухода (с каждой стороны).
231 Юрий Лазаренко
 
26.09.12
22:23
Вот жеж ешкин кот. Там мало того что доска заархивирована, так еще и скриптов куча, до которых пока не добрался. Ссыль на доску: http://paste.pro/5158822
232 Юрий Лазаренко
 
26.09.12
22:37
C первого раза выиграл. Правда, у меня изначальная расстановка вот такая была: http://www.ximage.ru/index.php?id=1348684585  )))))))
233 Sensodin
 
26.09.12
23:28
(232) неплохой гандикап))))))
234 opty
 
26.09.12
23:37
(232) А что не ферзи ? :))
235 Sun_Lin
 
26.09.12
23:52
(222)  Вот так и мелкософт пишет свои операционки, которые потом никуда не влезают :))) А реальные пацаны еще лет 15 назад писали виндоподобные операционки, которые на дискету влазили ;)
236 чувак
 
27.09.12
07:41
Уфф. С десятой попытки победил. Лет 20 не играл в шахматы.
237 D_Pavel
 
27.09.12
07:43
(202) тебе не показалось, всё в функции X
(204) никакой проги эта прога не собирает. Она сама по себе прога.
238 Юрий Лазаренко
 
27.09.12
08:07
(234) "А что, можно было?!!" (с) Саус Парк  ))))
239 Name2006
 
27.09.12
08:15
(0) "ЭВМ Наири (базовая модель), разработанная в Ереванском научно-исследовательском институте математических машин (ЕрНИИММ) под руководством главного конструктора — Овсепяна Грачья Есаевича. представляла малогабаритную универсальную машину для решения задач в НИИ, КБ, ВЦ, заводах. Быстродействие машины составляло 1500-2000 оп/сек, ёмкость ОЗУ – 1Кб, ёмкость ДЗУ – 16 Кб. Элементная база полупроводниковая. Ввод информации осуществлялся с телеграфного аппарата СТА-2м, вывод – на телеграфный аппарат РТА-50-2М. Машина потребляла мощность до 1,6 квт., 220 В, однофазная сеть, и занимала площадь около 20 кв. м. Конструктивно она была выполнена в виде электронного стола и стола питания"

А теперь главное - в конце 70-х лично наблюдал работу шахматной программы на этой машинке. (повторю - ёмкость ОЗУ 1Кб, программа загружалась с перфоленты).
240 Name2006
 
27.09.12
08:17
В то время никого не удивляло - как это можно в 1кб затолкать шахматы
241 D_Pavel
 
27.09.12
08:18
(240) В 16Кб вообще-то
242 sda553
 
27.09.12
09:29
(237) Да я уже видел, я сегодня разобрал уже основные элементы этой проги.
243 ptrtss
 
27.09.12
10:25
(12) Инет отключи
244 Coldboy
 
27.09.12
10:42
а где тута вообще разметка поля идет и фигур ...
245 aka MIK
 
27.09.12
10:49
(244)  ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM - это разметка фигур со сдвигом их по табличке символов до шахматных знаков
246 IOL
 
27.09.12
10:50
ДЗУ, как правило расширение ОЗУ
247 Coldboy
 
27.09.12
10:54
(245) как все просто оказывается и поле оно чертит и фигуры, и двигать помогает их по полю?
248 aka MIK
 
27.09.12
10:55
(247) Именно так и есть
249 oslokot
 
27.09.12
14:45
В хроме заместо фигур квадратики
250 Волшебник
 
27.09.12
14:46
(249) Выбросите его на помойку.
251 oslokot
 
27.09.12
14:47
(250) да, пора. и комп заодно
252 Miss1C
 
27.09.12
14:49
Проверила на 1С доска с фигурами есть, но ничего не передвигается, как будто картинка
253 oslokot
 
27.09.12
15:48
В IE заместо фигур квадратики
254 Zombi
 
27.09.12
15:58
(249) Хром, все работает.
255 y88
 
27.09.12
16:20
(253) SP3 стоит?
256 expertus
 
27.09.12
16:40
Круто. В таком объеме это что-то.
Проиграл несколько раз, отвлекался, из-за зевков продул. Потом целенаправленно играл, выиграл.
Программа делает идиотские ходы, не продумывает даже на ход вперед.
257 D_Pavel
 
28.09.12
10:59
(253) IE10, всё работает.
Прога писалась изначально под мозиллу, в ней и должно работать.
258 oslokot
 
28.09.12
14:25
(255) (257) разобрался, у меня просто винда кривая. На соседней машине идет нормально
259 DexterMorgan
 
28.09.12
14:30
рокировка не работает
260 DexterMorgan
 
28.09.12
14:30
программа слабая и даже очень
261 mailwood
 
28.09.12
15:04
Поставил мат. Очень слабо играет в эндшпиле.
262 Волшебник
 
28.09.12
15:10
(259) Чё, серьёзно?
263 cobRA
 
28.09.12
15:17
Программа фигня, еле ушла от "детского" мата, но какой ценой... Избиение младенца :))
264 DexterMorgan
 
28.09.12
15:22
(262) и че я тебе лично должен всю тему читать если это писали? или мб нет?
265 DexterMorgan
 
28.09.12
15:23
(261) хаха какой эндшпиль))) она в дебюте ходит а5 или h5)))
266 cobRA
 
28.09.12
15:27
(265) А ты ожидал, что она будет разыгрывать испанскую партию или сицилианскую защиту? :))
267 DexterMorgan
 
28.09.12
15:29
(265) нет, просто удивился как до эндшпиля он дошел если она с дебюта отдает все преимущество
268 cobRA
 
28.09.12
15:32
(267) А чего удивительного? Некоторые вон умудрились ей проиграть и не по одному разу :))
269 Irbis
 
28.09.12
15:50
Даже я тупой 1Сник выиграл, в шахматах только ходы фигур знаю
270 Ночной Эльф
 
28.09.12
15:50
А вы еще попробуйте в qip 2005 отослать этот текст он еще 4 смайлика там в тему нарисует )))
271 NS
 
28.09.12
16:03
Таких маленьких программ достаточно много.
Правда играют слабо.
272 NS
 
28.09.12
16:23
(159) Скоро программы и в шахматы будут играть на рандоме - как в ГО и Symple :)
Уже во многие игры сильнейшие программы на mcts
273 opty
 
28.09.12
16:25
(272) Наконец то ты пришел , тебя здесь кроме шуток сильно не хватало .
274 NS
 
28.09.12
16:36
Кто искал правила в программе - их там конечно нет. Там есть генератор ходов.
Вообще macromax играет в силу вторго-первого разряда. Полностью по правилам, при коде в 1433 символа.
http://home.hccnet.nl/h.g.muller/umax1_6.c
275 NS
 
28.09.12
16:38
http://home.hccnet.nl/h.g.muller/progress.html
1752 символа - даже хеш-таблица есть.
276 opty
 
28.09.12
16:46
(274) Это у него один из самых быстрых генераторов ходов в мире ?
Воде на движкофоруме обсуждали
277 NS
 
28.09.12
16:48
(276) Нет, у него отдельно быстрый генератор (на самом деле быстрый perft), и отдельно самая маленькая программа.
278 NS
 
28.09.12
16:49
(276) Не так вопрос прочитал. Да, у него. Хотя тут пробовали на каспаровчесс пописать быстрые генераторы - его скорость достижима, но его генератор для нормальной программы не пригоден.
279 opty
 
28.09.12
16:51
(278) Понял .
Ага припоминаю , что генератор обсуждали отдельно
280 Fedot200
 
02.10.12
12:53
Провел Королеву с первого раза, далее не стал играть. Очень легко обыграть, особенно если идти на жесткие размены.
281 VitaliyTokarev
 
02.10.12
14:29
http://img.pixs.ru/storage/1/5/8/chessjpg_3115065_5924158.jpg
Играл полностью расслабившись, провёл 3 ферзя, менял их потом на всё подряд )))
Да, (280), размены он делает тупо...
282 VitaliyTokarev
 
02.10.12
14:31
Ещё он любит туда-сюда по 50 раз тыкать фигурами...
Ставит шах, ушёл, ещё раз поставил, вернулся назад и он зацикливается...
Пока я не придумаю другой ход.
283 Fedot200
 
02.10.12
15:03
Ветка навеяла мысль - может устроить турнир по шахматам среди 1С-ников? или было уже такое?
284 Волшебник
 
02.10.12
15:04
(282) Это он играет на ничью путём троекратного повторения позиции.
285 DJ Anthon
 
02.10.12
15:10
(283) причем играть не мозгами а написанными программами на 1С
286 Fedot200
 
02.10.12
15:13
(285) Да можно и мозгами и за румкой/кружкой напитка, только за  реальной доской, а то через нет всегда существует вариант чессмастера.
287 DJ Anthon
 
02.10.12
15:16
(286) вот именно, поэтому удаленно можно только скриптами соревноваться, мы же все-таки программисты, а не кто-нибудь. использовать какой-нибудь сервачок с закрытым доступом и наблюдать, как скрипты шпилятся, по типу гугл контестов
288 DJ Anthon
 
02.10.12
15:27
честно говоря, аж захотелось такой создать )
289 NS
 
02.10.12
15:42
(287) Куча таких серваков, если напишешь шахматную программу - она без твоего участия будет играть в сотне турниров.
290 DJ Anthon
 
02.10.12
16:28
(289) на 1С?
291 DJ Anthon
 
02.10.12
16:29
на других-то языках ясен пень таких полно
292 NS
 
02.10.12
16:29
(290)Нафига писать шахматную программу на 1С?
Нормальному человеку такое в голову не придет.
293 opty
 
02.10.12
16:32
(292) :))
294 DJ Anthon
 
02.10.12
16:35
(292) дак а я не нормальный
295 NS
 
02.10.12
16:38
(291) Ну не полно. Российских скорей всего меньше тридцати.
Winboard/uci движков - вроде 22. Лет пять назад было намного меньше. Меньше десяти.
296 Lama12
 
02.10.12
16:47
Интересный вариант :)
Играет правда рандомно, но немного считает.
297 opty
 
02.10.12
16:47
(295) По данным sdchess 22 движка но там только свободно распространяемые .
ChessAlex там например нет (продавался вместе со нативной оболочкой)
Но не суть , трех десятков не наберется
298 Плот
 
02.10.12
16:48
(0) Я в ничью сыграл
299 NS
 
02.10.12
16:51
(297) А разве Marginal - это не ChessAlex?
300 NS
 
02.10.12
16:51
Да, Marginal это ChessAlex, так что есть он в списке.
301 opty
 
02.10.12
16:54
(299) Автор тот же , но вообще то по заявлению автора , с ChessAlex он ничего общего не имеет , с чистого листа писался . И играет заметно слабее чем более ранний ChessAlex
302 opty
 
02.10.12
16:56
+(301) Например FreeChess и Uralochka в таблице это разные движки , а автор один и тот же
303 NS
 
02.10.12
16:56
(301) Проще считать авторов, а не программы. Так как у каждого автора в любом случае куча версий.
304 NS
 
02.10.12
16:57
(302) Значит 21 движок :)
305 opty
 
02.10.12
17:01
(304) Ну значит 21 автор :)
306 Плот
 
02.10.12
17:17
Победил со второго раза. Я чайник в шахматах. ИМХО алгоритм там не очень сложный.
307 NS
 
02.10.12
17:26
(306) В смысле "сложный"?
308 Stagor
 
03.10.12
10:43
КАК локально запустить? У меня код браузер не открывает!
309 Sensodin
 
03.10.12
13:36
(308) см (4)
310 Stagor
 
04.10.12
10:32
кто-нить на 1С шахматы уже перевел?
311 Lama12
 
04.10.12
10:38
(310) NS - давно.
И на 7.7 есть, и на 8.0.
Все думал сделать из них самообучающиеся и привязать к оценке хода оценку по прошлой статистике.
Руки не доходят. Скорее всего не сделаю.
Кстати, можно взять движок за основу и сделать нормальную базу данных шахматную.
Если поколупаться, то можно и внешние движки прикрутить.
312 NS
 
04.10.12
11:23
(310) Почему "перевел"? С нуля всё написано.
313 Stagor
 
04.10.12
11:31
(312) я про программу в (0) её алгоритм на 1С уже перевели?
314 NS
 
04.10.12
11:32
(313) Нафига?
315 Zombi
 
04.10.12
11:34
(314) Наверно чтобы любой жадный и тупой(типа меня) мог увидеть, насколько элементарный код у этой программы.
316 Stagor
 
04.10.12
11:39
(315) :) или любой крутой 1С-ник, смог хвастануть, что понял ту программу и написал её на 1С со смысловыми именами.

Программа хоть и короткая - абсолютно нечитабильна.
Кто её сможет рефакторить?
317 Zombi
 
04.10.12
11:41
(316) А еще можно поправить код, всех пешек себе заменить на ферзей и глумиться над противником.
318 NS
 
04.10.12
12:03
(316) Зачем? Есть простые и читабельные шахматные исходники.
Тот-же MicroMax прокомментирован. Правда это не простой, а тоже рекордный по размеру исходник.
319 Сергей Д
 
11.10.12
11:18
Че-то у меня без картинок...
320 rcs
 
11.10.12
13:08
Вот мой мат, выиграл с 1-го раза. В шахматы уже очень давно не играл.
http://i45.fastpic.ru/big/2012/1011/7b/39ec48daf6e29fed91cb348175e94e7b.jpg
321 miklenew
 
11.10.12
16:42
(6) Взятие пешки на проходе не работет
322 КонецЦикла
 
11.10.12
17:15
(321) А ракировка? Работает?
323 sda553
 
12.10.12
16:05
(316) Я могу взяться, если кто оплатит. Мне лень на расшифровку время тратить, но расшифровать я это дело 100% способен.
324 DJ Anthon
 
12.10.12
18:59
да ладно???
325 ТочноеЯдро
 
13.10.12
23:38
(323, 324) дежавю или мне показалось ? :)
326 HeroShima
 
17.10.12
01:39
Нарыл на просторах:
Универсальный Hello World! на C, C++, Haskell, Ruby, Python, Perl(x2), HTML, tcl, zsh, make, bash и brainfuck

# /* [  <!-- */ include  <stdio.h> /*   \
 #{\
`""""true \\#{"\n#"};           \
 \
if [ -n "$ZSH_VERSION" ]; then           \
 \
 echo exec  echo I\'m a zsh script.; \
 \
elif [ -n "$BASH_VERSION" ]; then        \
 \
 echo exec  echo I\'m a bash script.; \
else  \
 echo exec  echo  I\'m  a sh  script.;    \
fi`;  #\
BEGIN{print"I'm a ", 0 ? "Ruby"  :"Perl",  " program.\n";  exit; }
 #\
%q~            

set dummy =0; puts [list "I'm"  "a"  "tcl"  "script."]; exit  

all: ; @echo "I'm a Makefile."          \
 #*/
/*: */ enum {a, b};            \
 \
static int c99(void) {        

#ifndef __cplusplus /* bah */        

unused1: if ((enum {b, a})0)          \
 (void)0;
#endif          

unused2:  return a;     \
}  \
static int trigraphs(void) {         \
 \
 return sizeof  "??!"  ==  2;    \
}  \
char X;               \
 \
int main(void) {             \
 \
 struct X  {        \
 \
    char  a[2];    \
 };\
 if (sizeof(X)  !=  1) {       \
 \
printf("I'm a C++ program (trigraphs %sabled).\n",         \
 \
  trigraphs()  ? "en"  : "dis");\
 \
}else if (1//**/2


)unused3 : { ; \
   printf("I'm a C program (C%s, trigraphs %sabled).\n", \
       c99() ? "89 with // comments" : "99", \
       trigraphs() ? "en" : "dis"); \
 } else { \
   printf("I'm a C program (C89, trigraphs %sabled).\n", \
       trigraphs() ? "en" : "dis"); \
 } \
 return 0; \
} /*
# \
> main :: IO () -- -- \
> main = putStr "I'm a Literate Haskell program.\n"
# \
]>++++++++[<+++++++++>-]<+.>>++++[<++++++++++>-]<-.[-]>++++++++++ \
[<+++++++++++>-]<-.>>++++[<++++++++>-]<.>>++++++++++[<++++++++++> \
-]<- - -.<.>+.->>++++++++++[<+++++++++++>-]<++++.<.>>>++++++++++[ \
<++++++++++>-]<+++++.<<<<+.->>>>- - -.<+++.- - -<++.- ->>>>>+++++ \
+++++[<+++++++++++>-]<- - -.<<<<<.<+++.>>>.<<<-.- ->>>>+.<.<.<<.> \
++++++++++++++.[-]++++++++++"""`
# \
print "I'm a Python program."; """[-][--><html><head>
<!--:--><title>I'm a HTML page</title></head><body>
<!--:--><h1>I'm a <marquee><blink>horrible HTML</blink></marquee> page</h1>
<!--:--><script language="Javascript">
<!--: # \
setTimeout( // \
 function () { // \
  document.body.innerHTML = "<h1>I'm a javascript-generated HTML page</h1>"; // \
 }, 10000); // \
//-->
</script><!--: \
</body></html><!-- } # \
say "I'm a Perl6 program", try { " ($?PUGS_VERSION)" } // "", "."; # """ # */
#define FOO ]-->~
327 IVIuXa
 
17.10.12
02:22
(0)
мдя сразу видно прогер
не то что некоторые...
328 zakidonoff
 
25.10.12
01:18
Если кому интересно как это работает...

<table><tbody><tr><th width="60" height="60" onclick="I[b=21]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=22]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=23]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=24]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=25]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=26]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=27]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=28]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th></tr><tr><th width="60" height="60" onclick="I[b=31]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=32]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=33]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=34]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=35]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=36]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=37]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=38]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th></tr><tr><th width="60" height="60" onclick="I[b=41]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=42]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=43]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=44]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=45]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=46]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=47]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=48]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th></tr><tr><th width="60" height="60" onclick="I[b=51]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=52]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=53]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=54]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=55]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=56]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=57]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=58]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th></tr><tr><th width="60" height="60" onclick="I[b=61]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=62]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=63]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=64]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=65]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=66]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=67]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=68]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th></tr><tr><th width="60" height="60" onclick="I[b=71]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=72]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=73]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=74]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=75]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=76]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=77]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=78]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th></tr><tr><th width="60" height="60" onclick="I[b=81]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=82]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=83]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=84]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=85]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#d0f0e0">?</th><th width="60" height="60" onclick="I[b=86]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=87]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=88]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th></tr><tr><th width="60" height="60" onclick="I[b=91]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=92]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=93]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=94]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=95]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=96]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=97]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=98]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th></tr><tr></tr></tbody></table>

Это интерпретация кода из хмл5
Оптимизация не за счёт библиотек, а за счёт встроенных функций современных браузеров.
Пы.Сы. на старых компах работать не будет.
Не думаю, что автор писал это ручками - скорее всего просто использовал компилятор =)
329 zakidonoff
 
25.10.12
01:21
(328) *HTML5. Точнее, одного из его элементов
wiki:Canvas_(HTML)
330 badboychik
 
02.11.12
17:42
этот код сжат упаковщиком яваскрипта
331 HeroShima
 
02.11.12
17:44
(330) алилуйя! )
332 badboychik
 
02.11.12
17:52
такая обфускация-упаковка даже для защиты семерошных конф использовалась
333 HeroShima
 
02.11.12
17:54
Оно то конечно да, но (50) всё равно не много.
334 HeroShima
 
02.11.12
18:08
Кстати, видел на хабре статейку про передачу пожатого яваскрипта в имиджах.
335 ВалераОшкин
 
02.11.12
18:17
(50)(0) Скопировал код, вставил в пустой файл блокнота. Файлу дал расширение html.
Не работает, открывается пустое окно.
336 badboychik
 
02.11.12
23:35
337 Нева
 
02.11.12
23:47
(336)
)))))))))))))