Показать сообщение отдельно
Старый 08.03.2012, 04:11
ChuwY вне форума Посмотреть профиль Отправить личное сообщение для ChuwY Посетить домашнюю страницу ChuwY Найти все сообщения от ChuwY
  № 5  
Ответить с цитированием
ChuwY
 
Аватар для ChuwY

Регистрация: Nov 2009
Адрес: Тула / Москва
Сообщений: 734
Отправить сообщение для ChuwY с помощью ICQ Отправить сообщение для ChuwY с помощью Skype™
Почитайте про метод обратного преобразования.
Там же дается пример для экспоненциального распределения, которое вам как нельзя лучше подходит.

Функция (результат в приложении):
Код AS3:
private function exponentialRandom(lambda : Number):Number{
  var x : Number = Math.random();
  return -(1/lambda)*Math.log(1-x);
}

Вариант, адаптированный к вашим требованиям:
Код AS3:
private function ravenNikmaRandom(min : Number, max : Number, gravity : Number):Number{
  return min + exponentialRandom(gravity) % (max-min);
}
Изображения
       
__________________
9 из 10 голосов в моей голове сказали наркотикам "НЕТ"
Мои ачивки: художник-паразит.


Последний раз редактировалось ChuwY; 08.03.2012 в 08:41.