Подскажите саму логику реализации:
есть 3 функции:
шаг_вперед();
шаг_влево();
шаг_вправо();
На определенном участке кода нужно выполнить ОДНУ из этих функциий с учетом вероятностей:
вероятность 0.55 того, что выполнится функция шаг_вперед();
вероятность 0.25 того, что выполнится функция шаг_влево();
вероятность 0.2 того, что выполнится функция шаг_вправо();
У кого какие мысли?
Спустя 28 минут, 8 секунд (17.07.2012 - 19:45) AlmazDelDiablo написал(а):
Наша вероятность, например $n = 55.
Генерируем рандомное число $r от 1 до 100. И если $r <= $n, то true, функция выполняется.
Как-то так.
Генерируем рандомное число $r от 1 до 100. И если $r <= $n, то true, функция выполняется.
Как-то так.
Спустя 19 минут, 4 секунды (17.07.2012 - 20:04) ultimatum написал(а):
Цитата (AlmazDelDiablo @ 17.07.2012 - 16:45) |
Наша вероятность, например $n = 55. Генерируем рандомное число $r от 1 до 100. И если $r <= $n, то true, функция выполняется. Как-то так. |
В принципе так и думал
$r = rand(1,100);
если $r входит в диапазон от 1 до 55 - выполняется первая функция
если в - от 56 до 80 - то вторая
если в - от 81 до 100 - то третья
но не уверен, что это будет правильно
Спустя 5 минут, 49 секунд (17.07.2012 - 20:10) AlmazDelDiablo написал(а):
Вполне. Теперь реализуйте и плюс мне в карму
Спустя 10 минут, 15 секунд (17.07.2012 - 20:20) ultimatum написал(а):
Цитата (AlmazDelDiablo @ 17.07.2012 - 17:10) |
Вполне. Теперь реализуйте и плюс мне в карму |
Потестил, вроде всё правильно работает.
Благодарю!
_____________
Срби и Руси браћа заувек!!!
Косово je Србиjа!!!