Вниз
Скачать: CL | DM;

Создание объекта при заданной верооятности его создания   Найти похожие ветки 

 
orion_st ©   (2002-12-18 15:22) [0]

Необходимо создать объект, если задана вероятность его создания, т.е. если вероятность - 30%, то с такой вероятностью объект и создастся. Умом это я понимаю, но как это программно реализовать?


 
Digitman ©   (2002-12-18 15:33) [1]

imho, для этой задачи можно попытаться приспособить (с некоторой погрешностью, конечно) гауссово распределение случ.величин

посмотри ф-цию RandG(), реализующую Гауссов "колокольчик"


 
MBo ©   (2002-12-18 15:51) [2]

или просто
J:=random(10);
if J<3 then
Obj:=TObj.Create;


 
Digitman ©   (2002-12-18 15:53) [3]


> MBo


с Random() погрешность вероятностной величины, imho, больше будет(


 
pasha676   (2002-12-18 16:28) [4]

>> с Random() погрешность вероятностной величины, imho, больше >>будет(

А нельзя ли пояснить эту глубокую мысль?


 
orion_st ©   (2002-12-18 16:43) [5]

Дело в том, что у меня могут быть вероятности с точностью до одной сотой, т.е, например, 33,89%.
А где эту функцию RandG брать? Вообще-то интересует С(С++) приближение.


 
Digitman ©   (2002-12-18 16:59) [6]


> pasha676


Для начала поясни, каковы твои глубокие сомнения


> orion_st


модуль Math


 
pasha676   (2002-12-18 18:14) [7]


> Дело в том, что у меня могут быть вероятности с точностью
> до одной сотой, т.е, например, 33,89%.


Ну и какие проблеммы? Общий алгоритм такой - практически любой язык программирования позволяет получить псевдослучайное число от 0 до 1. Оно обычно real. Вот и сравнивай это число с заданной вероятностью. В твоем примере с 0,3389.


> Для начала поясни, каковы твои глубокие сомнения

Генератор псевдослучайных чисел дает равномерное распрелделение. Если тебя не устраивает равномерное или псевдослучайное надо с большим параметром между повторениями - то делаешь свой или накручиваешь компьютерный генератор. Но выражение "погрешность вероятностной величины" - это бред в применимости к примеру МВо.


 
Digitman ©   (2002-12-19 09:53) [8]


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


Вот именно ! RandG() по сути это и делает. Взгляни в код ф-ции)Следует лишь выбрать нужный участок в диапазоне областей определения и значения ф-ции


 
pasha676   (2002-12-19 10:17) [9]

2Digitman
Сорри, но я все таки не понял, что тебе нужно.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.012 c
1-94794
YuN
2003-05-19 07:58
2003.05.29
Как выцепить сообщение в обработчике исключений?


1-94910
w666w
2003-05-15 13:07
2003.05.29
Запрет изменения ширины колонки ListView


8-94974
Kirp
2003-02-14 11:35
2003.05.29
Зуминг изображения


3-94677
Viktor
2003-04-29 01:36
2003.05.29
Хранение рисунков в базе данных


1-94830
Raduga
2003-05-19 13:46
2003.05.29
Преобразование типов




   Наверх