"Набор карт дилером". Исходник для програмеров. ID:48306 |
Вт, 28 августа 2001 00:00 [#] [») |
|
Pan Votruba |
|
Форумы Покер.ру
|
|
Наш "стойкий, оловянный солдатик" написал:
>> Не стыжусь выкладывать абсолютно. Все
>> замечания и нападки буду коллекционировать и
>> размещать на сайте. ... Пока еще ни кто мне не
>> прислал своих программных выкладок, ни
>> опровергающих ни подтверждающих мои цифры.
>> Но все говоруны знают, что эти цифры не
>> правильные. Не интересно, не пользуйся. Вот и
>> все. Вместо того что бы нападать, взял бы комп,
>> запрограммировал бы чего-нибудь и оперировал
>> бы своими цифрами. ... Докажи мне что я не прав.
>> Только докажи именно своими исследованиями.
>> Мне интересно, все кто говорят что эти цифры не
>> верны, откуда берут свои знание по БД. Из
>> интернета что ли?
ВСЕ источники хороши. Только надо КРИТИЧЕСКИ подходить к цифрам: ошибки могут быть у
каждого. А вот твердолобая позиция сводит на нет любой диалог...
Ниже приводится исходник кода для "Набора карт дилером". Рассмотрен тривиальный случай -
бесконечная, равномерная колода. Компилируйте, друзья, проверяйте-сравнивайте найденные
значения. Надеюсь, что это поможет Вам выработать устойчивый иммунитет против софт-
графоманов.
Удачи!
ПВ
======= Язык - С. Компилятор - любой из известных.
enum TYPE_COMB { LE16=-1, EQ17=0, EQ21=4, B_JACK=5, GE22=6 };
enum IND_CARDS { CARD_2=0, CARD_10=8, CARD_A=9 };
int ResultForDiler( int n_cards, int *Cards )
{ int ii, num_ace, sum_hard, sum_ace, sum_all;
for( ii=sum_hard=sum_ace=num_ace=0; ii<n_cards; !=CARD_A (sum_hard ) + 2)) cards[ii] if( ii++ {>= 22 )
return GE22;
} else
sum_ace += ((num_ace++)? 1 : 11);
}
sum_all = sum_hard + (((sum_hard + sum_ace) >= 22)? num_ace : sum_ace);
if( sum_all == 21 && n_cards == 2 )
return B_JACK;
return ((sum_all >= 22)? GE22 : (sum_all <= =1.; (++cards[n_cards-1] (res=ResultForDiler(n_cards, (sum_all-17)); ) * +=CurMul[n_cards-1]; 1 16)? : analhitdiler( cards))== cards[0]=is; cards[12]; cards[n_cards++]=CARD_2; curmul[12], curmul[n_cards]=CurMul[n_cards-1] curpart[0]=CurMul[0] curpart[12], curpart[n_cards]=(1./13.); curpart[n_cards]; double else for( if( ii=0; ii++ ii, ii<7; int is=CARD_2; is++ is, is<=CARD_A; le16 n_cards=1; n_cards, perccomb[10][7]; perccomb[is][ii]=0.; perccomb[is][res] res, void while( { }> CARD_A) ) {
if( --n_cards == 1 )
goto NEXT;
}
ii = n_cards - 1;
CurPart[ii] = ((Cards[ii] == CARD_10)? 4. : 1.)/13.;
CurMul[ii] = CurMul[ii-1] * CurPart[ii];
}
}
NEXT:;
}
// Здесь возможна печать найденных параметров:
// массив PercComb[10][7] соответствует таблице
// "Набор карт дилером", представленной на сайте
// www.lig.ru Отличие только при переборе на 8-ке. -
// На сайте опечатка: указано 24.27, правильно -
// 24.47
}
void main( void )
{ AnalHitDiler(); }
|
|
|
Сорри за форматирование кода... (Не виноватая я!) [NT] ID:48307 ответ на 48306 |
Вт, 28 августа 2001 00:00 («] [#] [») |
|
Pan Votruba |
|
Форумы Покер.ру
|
|
.
|
|
|
Re: "Набор карт дилером". Исходник для програмеров. ID:48311 ответ на 48306 |
Вт, 28 августа 2001 00:00 («] [#] [») |
|
alexpoker |
|
Форумы Покер.ру
|
|
C трудный для понимания язык, я предпочитаю Delphi )))
|
|
|
Ложка дегтя ;) ID:48313 ответ на 48306 |
Вт, 28 августа 2001 00:00 («] [#] [») |
|
|
Я уже немного подзабыл C, приходится писать на других языках (а жаль...), и компилятора у меня
нет, но приведенный код компилироваться не будет. AnalHitDiler, вызываемая из main, нигде не
объявлена, в тексте масса синтаксических ошибок, стиль - откровенно дилетантский (или,
возможно, "старческий" - я встречал такой ужас у программера, начинавшего еще на
действительно БОЛЬШИХ ЭВМ). В общем, для выбранного тобой имиджа, Пан (эдакий игриво-
загадочный профессионал), намного лучше было бы воздержаться от этого поста.
Я уж молчу о том, что писать сейчас прикладные программы под DOS (с возможностью
распечатки результатов - гы несколько странно.
зы. "Сорри за форматирование" не катит - форматированный код нормально вставляется через
буфер, все отступы сохраняются.
ззы. Это, безусловно, наезд. Но, надеюсь, обойдется без больших обид. Закончу в твоем стиле:
Удачи!
|
|
|
И я рискну вставить словечко... ID:48319 ответ на 48306 |
Вт, 28 августа 2001 00:00 («] [#] [») |
|
|
В отличие от других участников дискусии в "витке" Пана я нахожусь в наиболее "облегченной"
весовой категории по отношению к программированию. Вспоминаю 1-й курс, когда на
протяжении одного семестра нам преподавали эту науку - язык BASIC. Я кстати тогда впервые
увидел мышь у компьютера - настоящее чудо!!! В принципе этот язык наверняка уже устарел.
Причем от своего друга, занимающегося программированием, я слышал, что зачастую инновация
в этой области устаревает еще не дойдя до внедрения. Однако в одном из ранних
изданий "Теория БД" (конец 80-х) Питера Гриффина, который до сих пор считается наивысшим
авторитетом в области математической базы БД, я нашел программку на том же бородатом
бэйзике, которая также решает необходимую задачку:
10 FOR I= 1 TO 10
20 IF W(I)=0 THEN 270
30 B = B*W(I)/A
40 W(I)=W(I)-1
50 T =T+I
60 IF T >16 THEN 130
70 IF (T-11)*(T-7)>0 THEN 170
80 IF (I-1)*(J-1)=0 THEN 150
90 FOR L= 1 TO K
100 IF A(L)= 1 THEN 150
110 NEXT TO L
120 GO TO 170
130 F(T)=F(T)+B
140 GO TO 240
150 F(T+10)=F(T+10)+B
160 GO TO 240
170 A=A-1
180 K=K+1
190 A(K)=I
200 GO SUB 10
210 I=A(K)
220 K=K-1
230 A=A+1
240 W(I)=W(I)+1
250 T=T-I
260 B=B*A/W(I)
270 NEXT I
280 RETURN
где А = кол-во карт в колоде,
T=J=1-ая карта дилера,
W(I)=кол-во карт номиналом I,
К=0
В=1
F(X)=вероятность достижения общего кол-ва Х очков.
Возможно в/у программа уже не актуальна, но я хочу дать Саше шанс перепроверить свои
вычисления разными способами. Саша, кстати, одно из неписанных правил счетчика - не лишать
лоха его иллюзий относительно игры, так как если вообще не останется лохов, то не останется и
БД, так как эта игра станет уже невыгодна для казино. (Если для тебя слово лох является
обидным, можешь его заменить на любой другой, удобный для твоего ЭГО термин.) В этой связи
я в принципе уже сам не вижу мотивации для дальнейшего спасения тебя от тебя же самого (хотя
мне и импонирует твой подход к благотворительности).
|
|
|
АНДРЕЙ!!! - Глюки? ID:48320 ответ на 48307 |
Ср, 29 августа 2001 00:00 («] [#] [») |
|
Pan Votruba |
|
Форумы Покер.ру
|
|
Андрей!
Редактирую свой СТАРТОВЫЙ пост. Вижу - все в норме. Сохраняю, выхожу...
И!... - Текст мало того, что форматируется (слипаются строки), НО исчезают отдельные
фрагменты кода. -(
Захожу снова в редактирование поста. - Все ок!.. - ????
Проверь пожалуйста.
ПВ
|
|
|
Да да, уже заметили - скоро поправим (БТ) ID:48321 ответ на 48320 |
Ср, 29 августа 2001 00:00 («] [#] [») |
|
|
;;
|
|
|
Приаттаченый файл с кодом ID:48322 ответ на 48307 |
Ср, 29 августа 2001 00:00 («] [#] [») |
|
Pan Votruba |
|
Форумы Покер.ру
|
|
Попытка воспользоваться сервисом.
|
Вложение:
diler.c.htm
(Размер: 1.83KB, Загружено 180 раз)
|
|
|
|
Re: "Набор карт дилером". Исходник для програмеров. ID:48324 ответ на 48311 |
Ср, 29 августа 2001 00:00 («] [#] [») |
|
|
Скажу тебе как программист программисту, делфи - это не язык )))))))))) Хотя ты об этом знаешь
конечно ))))
|
|
|
|
Pan Votruba |
|
Форумы Покер.ру
|
|
Э-эх, КОНЬ!...
>> Я уже немного подзабыл C, приходится писать на других
>> языках. ... приведенный код компилироваться не будет.
>> AnalHitDiler, вызываемая из main, нигде не объявлена...
Видно крепко забыл С. Или вообще его не знал.
>> ...в тексте масса синтаксических ошибок
Смотри приаттаченный файл (свежее сообщение):
http://www.poker.ru/?FID=1&IN=1&MID=3&FWIN=1&FMID=2258
То, что на сайте глюк - сообщил Администратору.
>> ... стиль - откровенно дилетантский (или, возможно,
>> "старческий" - я встречал такой ужас у программера,
>> начинавшего еще на действительно БОЛЬШИХ ЭВМ).
Слушай, Самостийный и Незалижний КоНЬ, ты за полгода пребывания на форуме не выдал "на
горА" ни одной цифры, ниразу не высказал собственных мыслей о БД, а "отличился" разве-что
плагиатом книги Лесного - см. топик
http://www.poker.ru/?FID=1&LMID=1&MID=3&IN=1&FWIN=1&FMID=997
Кстати, где твоя "инет-страничка" с громким названием "сайт"??
Ку-ку!?... А ведь, если Андрей создаст раздел курьезов, то ОНА - первый прендент.
О цифрах.
Напомню, - http://www.poker.ru/?FID=1&IN=1&MID=3&FWIN=3&FMID=1015, что данные о "Наборе
карт дилером" приводились тобой ОШИБОЧНЫЕ, но ты ОБЪЯСНИЛ это так:
>> Упс. Доверился чужим результатам, сам не считал. Я взял
>> результаты из Casino Verite - можешь проверить. Уж не
>> думал, что там может быть ошибка, не такая уж и сложная
>> задача.
Ok... Если теперь можешь ХОТЬ ЧТО-ТО считать в БД - аргументы на стол! Показывай исходник,
ламер...
>> Я уж молчу о том, что писать сейчас прикладные
>> программы под DOS несколько странно.
Это философия? - То раба, стоящего на коленях... Или спесь? - А основания?
ИМХО: фортран, С, С++ (VC) позволяют (лично мне) успешно решать счетные задачи. Хотя про
фортран ты, как истинный HTML-клавишник, наверное и не слышал...
Про домашний комп: что имею (Селерон, RAM 64 Мб, HDD 2 Гб) - то имею. Не осуждаю других и за
486-ой. А на работе (P3) заниматься гэмблингом = преступлению.
---
ГЛАВНОЕ.
Как "Запорожец" - тоже средство передвижения наряду с "Мерсом", так и в
программировании: "венец работы" - конечный результат (всесторонне протестированные
алгоритмы, точные искомые цифры и т.д.), а КАК (С, бэйсик) и ГДЕ (DOS, UNIX, WIN) он получен -
подчас имеет вторичное значение.
>> Это, безусловно, наезд.
Извини, не заметил трехколесного велосипедика...
Созидай сам! Пора.
ПВ
|
|
|
Не в моих интересах, конечно, ... ID:48326 ответ на 48325 |
Ср, 29 августа 2001 00:00 («] [#] [») |
|
|
Но, как ни странно, последнее время стал замечать губительную для форумов тенденцию к
проведению активных боевых действий... Арабы с израильтянами на всех влияние оказывают, что
ли?..
И что характерно, даже те, кто понимают это, все равно ввязываются в процесс... Может, какая-то
солнечная активность?.. Или эпидемия, типа вирус, передаваемый исключительно путем личного
контакта с постом носителя...
А есть некоторые, которые в это время, как говорит Удивленный, пишут таки книжки...
Не помните, кто сказал: "Свято место пусто не бывает"?..
|
|
|
|
Re: Не в моих интересах, конечно, ... ID:48329 ответ на 48326 |
Ср, 29 августа 2001 00:00 («] [#] [») |
|
|
А что, лучше промолчать? Не вопрос, могу и промолчать, тогда какой смысл этого форума?
Я бы вот только хотел заметить следующее:
Читают сообщения на этом форуме гораздо больше людей, чем тех, кто их пишет. И у тех кто
читает возникает резонный вопрос - кому доверять больше, кому меньше. Мне кажется что в БД
основной определяющей является количественный выигрыш. Вот если бы все, кто здесь пишет
взяли бы хотя бы по штуке баксов, присели бы за 25 долларовый стол и зафиксировали бы свой
результат, например через 3 часа игры. Результат бы опубликовали, и все кто читает, знали бы
реальную цену публикуемых советов. Тогда бы и пустых споров меньше стало.
|
|
|
Ты о чем??? ID:48331 ответ на 48329 |
Ср, 29 августа 2001 00:00 («] [#] [») |
|
Garry Baldy |
|
Форумы Покер.ру
|
|
Саша, умоляю!..
Ты даже себе представить не можешь, сколько у меня накоплено реальной статистики. Какая
штука?!! Какие 3 шафла???!!! Ты что, смеешься?!
Другое дело, я никогда не буду публиковать результаты - я себе не враг. Лучше б Гришины
ежемесячные отчеты почитал. Могу сказать, что МОИ результаты подтверждают МОИ расчеты.
Добавлю, что это КРАЙНЕ неразумно - брать с собой штуку, идти за 25-долларовый стол и играть
там 3 часа... Но это совсем другая тема.
Удачи.
Garry Baldy.
|
|
|
Отчетность ID:48332 ответ на 48331 |
Ср, 29 августа 2001 00:00 («] [#] [») |
|
|
Кстати по поводу моей отчетности. Я скорее всего за август вывешу последний отчет, после чего
прекращу эту практику. Для того чтобы было понятно, в августе-сентябре прошлого года я
проиграл где-то 500 нач.ставок. Жизнь блэкджексиста такова, что все эмоции приходится
держать в себе - некому поплакаться в жилетку, не с кем разделить радость победы. Причем
этот кто-то должен понимать БД. Я обозлился на дисперсию и начал принтовать свои рез-ты на
сайте. Сейчас даже не могу вспомнить, какую конкретную цель я преследовал. По инерции это
делал до сих пор. Однако точно также, как я словил отрицат. виток дисперсии год назад, это
просто совпадение, что я не свел на протяжении года хоть какой-то месяц со знаком минус, хотя
в процессе игры (внутри каждого месяца) присутствовали дикие американские горки. Вместе с
тем сотрудники казино могут сделать неправильный вывод из моих постов - человек
получает "зарплату" в казино каждый месяц. Можно конечно вывесить сфальсифицированный
проигрышный отчет за ближайший месяц , но я не хочу гнать пургу, тем более не хочу
целенаправленно сливать в реале.
|
|
|
Re: Геть! ID:48333 ответ на 48325 |
Ср, 29 августа 2001 00:00 («] [#] [») |
|
|
>>> Я уже немного подзабыл C, приходится писать на других
>>> языках. ... приведенный код компилироваться не будет.
>>> AnalHitDiler, вызываемая из main, нигде не объявлена...
>Видно крепко забыл С. Или вообще его не знал.
Да ты сам свой пост посмотри.
>>> ...в тексте масса синтаксических ошибок
>Смотри приаттаченный файл (свежее сообщение):
>http://www.poker.ru/?FID=1&IN=1&MID=3&FWIN=1&FMID=2258
>То, что на сайте глюк - сообщил Администратору.
Согласен. В аттаче все в порядке.
>Слушай, Самостийный и Незалижний КоНЬ, ты за полгода пребывания на форуме не выдал "на
>горА" ни одной цифры, ниразу не высказал собственных мыслей о БД, а "отличился" разве-что
>плагиатом книги Лесного - см. топик
>http://www.poker.ru/?FID=1&LMID=1&MID=3&IN=1&FWIN=1&FMID=997
Цифры вычислять я и не нанимался (если разобраться, кроме тебя почти никто собственные
вычисления и не постит), а насчет мыслей - ты зря. В основном, может быть, это были вопросы,
но мысли тоже были.
>Кстати, где твоя "инет-страничка" с громким названием "сайт"??
Да никак не доделаю. Ты же мне на пару с Лесным энтузиазм и сбил.
>Ку-ку!?... А ведь, если Андрей создаст раздел курьезов, то ОНА - первый прендент.
Ну и что там такого курьезного? (Жаль с wallst удалили, если соберусь дописать, выложу в другое
место)
>О цифрах.
>Напомню, - http://www.poker.ru/?FID=1&IN=1&MID=3&FWIN=3&FMID=1015, что данные о "Наборе
>карт дилером" приводились тобой ОШИБОЧНЫЕ, но ты ОБЪЯСНИЛ это так:
>>> Упс. Доверился чужим результатам, сам не считал. Я взял
>>> результаты из Casino Verite - можешь проверить. Уж не
>>> думал, что там может быть ошибка, не такая уж и сложная
>>> задача.
>Ok... Если теперь можешь ХОТЬ ЧТО-ТО считать в БД - аргументы на стол! Показывай исходник,
>ламер...
Я безусловно мог бы создать программу для рассчета "цифр", но не вижу в этом необходимости.
Единственные параметры, которые меня очень сильно интересовали - это матожидание и ROR,
их моя программа считает. Исходник показывать проблематично, так как задача относительно
большая (симулятор плюс тренажер) и написана объектно-ориентированно; это тебе не расчет
вероятностей набора карт дилером, да еще и на бесконечной колоде. Между прочим, я до сих
пор думаю, что в Casino Verite правильные вероятности, слишком уж старая и известная
программа - просто ты и Лесной считали бесконечную колоду, а я привел вероятности для шести
колод.
>>> Я уж молчу о том, что писать сейчас прикладные
>>> программы под DOS несколько странно.
>Это философия? - То раба, стоящего на коленях... Или спесь? - А основания?
Я не знаю никого, кому бы платили деньги за программы под ДОС. К тому же я сам считаю
графический интерфейс необходимым параметром современной программы. Философия,
возможно, и рабская, но семью-то надо кормить
>ИМХО: фортран, С, С++ (VC) позволяют (лично мне) успешно решать счетные задачи. Хотя про
>фортран ты, как истинный HTML-клавишник, наверное и не слышал...
Ну что за привычка? Я даже не знаю, что такое HTML-клавишник. Фортран не знаю, это ты прав.
>Про домашний комп: что имею (Селерон, RAM 64 Мб, HDD 2 Гб) - то имею. Не осуждаю других и
>за 486-ой. А на работе (P3) заниматься гэмблингом = преступлению.
---
>ГЛАВНОЕ.
>Как "Запорожец" - тоже средство передвижения наряду с "Мерсом", так и в
>программировании: "венец работы" - конечный результат (всесторонне протестированные
>алгоритмы, точные искомые цифры и т.д.), а КАК (С, бэйсик) и ГДЕ (DOS, UNIX, WIN) он получен -
>подчас имеет вторичное значение.
Ну да, согласен. Для численных задач это действительно так. Но, опять же, пока клиенту не
покажешь окошки, да с графикой, денег не получишь (может и получишь, но меньше и с большим
напрягом).
>Созидай сам! Пора.
Пан, ну научись ты не делать выводов о собеседнике без аргументов. Я и "HTML-клавишник", и
ламер, и плагиатор, и никак не начну созидать... С чего ты взял?
|
|
|
Well done, Grisha! ID:48334 ответ на 48319 |
Ср, 29 августа 2001 00:01 («] [#] [») |
|
Garry Baldy |
|
Форумы Покер.ру
|
|
Именно это я и хотел сделать, чесслово! Но мне настолько было лень набирать эту
программульку, что я не решил встревать в базар. Общий тон которого мне категорически не
нравится, как со стороны Саши, так и со стороны Пана Вотрубы. Мужики, что это за дела? Вы
прямо как Балаганов с Паниковским: "Нет, а ты кто такой?!". Я не могу подобрать нужных слов, но
это НЕПРАВИЛЬНО. Да, в спорах рождается истина, но это должен быть именно спор, а не поток
матершины. Обидно за вас обоих, ей-богу. Если бы я мог модерировать этот форум - посносил бы
все ваши наезды к чертовой матери - обижайтесь на здоровье.
Гриша, может, тебе будет не в падлу еще и вывесить генератор СЧ, который есть в Beyond
Counting? Может, это даст еще какую-то пищу для обсуждений и для наездов на ни в чем не
повинного Джеймса Гросджина, вместо того, чтобы обливать помоями друг друга?
Удачи.
Garry Baldy.
|
|
|
Re: И я рискну вставить словечко... ID:48335 ответ на 48319 |
Ср, 29 августа 2001 00:01 («] [#] [») |
|
|
Кстати бейсик не так уж и плох для решения подобных задач. Я на нем 14 лет назад
программировал и горя не знал. Вот только что считает эта программа?
|
|
|
Re: Ты о чем??? ID:48338 ответ на 48331 |
Чт, 30 августа 2001 00:00 («] [#] [») |
|
|
А при чем тут 3 шафла?
А никто и не заставляет тебя публиковать свои результаты. Один раз проведи показательную игру
и все. Все сразу будут знать твою реальную цену. Я не боюсь говорить, что, например в кристалле
и в шангри мне явно больше нравиться, но при этом не публикую своих результатов. И даже если
бы публиковал, как это мне может навредить?
|
|
|
Re: Ты о чем??? ID:48339 ответ на 48338 |
Чт, 30 августа 2001 00:00 («] [#] [») |
|
Garry Baldy |
|
Форумы Покер.ру
|
|
Ты что, не понимаешь, что любая сессия в 2 часа не показатель?! Даже 200 часов недостаточно
для подтверждения статистики. У меня есть данные по гораздо большему количеству часов,
подтверждающие мои расчеты. А твое предложение насчет двух часов, штуки и 25-долларовом
столе - полный бред.
И вообще, почему я должен тебе что-то доказывать?
Garry Baldy.
|
|
|