Re: Программисты помогите ID:10288 ответ на 10276 |
Сб, 5 ноября 2005 13:05 [#] |
|
Это Я |
|
(иконки IM)
Форумы CasinoGames
|
|
Привет rombyk. Не знаю, на чем ты пишешь. Но в встроенная в С++ функция rand() имеет определенные закономерности. Флеши у меня тоже выходили в 2 раза чаще, чем надо. Я чуть с ума не сошел, когда искал ошибку. Потом прикрутил другой генератор – нашел где-то в нете. Стало все вроде нормально. Но оказалось, что тоже на 5…10% больше флешей. Недавно сделал так:
peremeshat=rand()%10; for(i=0;i<peremeshat;i++) fignj=rand();
k[vz]=rand()%13+2;
peremeshat=rand()%10; for(i=0;i<peremeshat;i++) fignj=rand();
k_m[vz]=rand()%4;
переменная peremeshat принимает случайное значение (допустим до 10). После этого столько раз вхолостую вызывается генератор. После этого он используется по назначению. И так каждый раз перед использованием.
Формулы сочетаний, перестановок и т.д. у меня в памяти с института. Нужно просто сходить в библиотеку и взять учебник. Либо по ссылкам на слова “сочетание, перестановка, комбинаторика”. А формула всего одна c(n,m)=n!/(m!(n-m)!). Потом умножаешь или делишь сочетания.
|
|
|