Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Лохотрон
 
 автор: Евгений Петров   (19.03.2006 в 01:10)   письмо автору
 
 

Завелся идеей написать двиг лотереи. Принцип примерно такой, загадывается число от 0 до 100 пользователь выбирает больше либо меньше это число чем 50. Если угадывает - то выигрывает, если не угадывает, то проигрывает.
Вроде все гениально просто, генерируем число из диапазона 0-100 и сравниваем с 50. НО! Лохотрон он и в африке лохотрон, ничего случайно не происходит, надо чтобы эти числа генерировались в соотношении 40% - выиграшей на 60% проиграшей.
Че то я сижу и не лчень могу придумать как это организовать чтобы распределение выиграшей и протграшей было равномерным....
Может есть уже готовые формулы которые генерируют числа с определенной долей случайности?

   
 
 автор: JIEXA   (19.03.2006 в 01:30)   письмо автору
 
   для: Евгений Петров   (19.03.2006 в 01:10)
 

а может просто генерировать число от 10 до 110? вот и будет соотношение 40 к 60

   
 
 автор: FBI   (19.03.2006 в 01:33)   письмо автору
 
   для: JIEXA   (19.03.2006 в 01:30)
 

тогда можно и от 10 до 90 ;))

   
 
 автор: Евгений Петров   (19.03.2006 в 01:36)   письмо автору
 
   для: JIEXA   (19.03.2006 в 01:30)
 

Хм....

   
 
 автор: babilonian   (19.03.2006 в 01:33)   письмо автору
 
   для: Евгений Петров   (19.03.2006 в 01:10)
 

Откуда-то стырил скрипт. Не уверен что вообще работает, но поробовать стоит

function kazino($start_num, $stop_num, $out_num, $user_num){
$t = rand(1, $out_num); // вероятность выйгрыша 1 к $out_num
if ($t == '1'){
echo "Вау я в шоке твое число $use_num выйграло...";
// далее чето делаем, деньгу ему чтоли даем ...
} else {
for($start_num, $i <= $stop_num, $i++){$array_input[$i] = $i; }
if (in_array($array_input[$user_num], $array_input)){
unset($array_input[$user_num]);
}
$rand_num = array_rand($array_input, 1);
echo "Твое число $use_num НЕ выйграло выпало $array_input[$rand_num[0]] ";
}
}

   
 
 автор: Евгений Петров   (19.03.2006 в 01:43)   письмо автору
 
   для: babilonian   (19.03.2006 в 01:33)
 

А тоже вариант. Сначала генерируется вероятность а потом в зависимости от того выиграл или нет генерируется число :)

   
 
 автор: Shorr Kan   (19.03.2006 в 01:52)   письмо автору
 
   для: Евгений Петров   (19.03.2006 в 01:43)
 

Просто считайте количество проигрышей. После двух проигрышей - включайте рандомный режим - выигрыш/проигрыш (честный, 50/50). После любого выигрыша - отключайте рандомный и включайте режим проигрыша.

Можно и обратную схему - от количества выигрышей отталкиваться...

   
 
 автор: Евгений Петров   (19.03.2006 в 16:48)   письмо автору
 
   для: Shorr Kan   (19.03.2006 в 01:52)
 

Ой это совсем сложно. Все прще генерируем число от 0 до 100 если меньше 40 - выиграл, больше, ну и в зависимости от ситуации геерируем число до 50 или от 50 до 100

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования