|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
10.06.2013, 22:40 | #1 |
Форумчанин
Регистрация: 11.02.2011
Сообщений: 131
|
Генерация случайных величин
Здравствуйте. Прошу помощи. В C++ нужно сгенерировать:
1) Число с заданным математическим ожиданием и среднеквадратичным отклонением (нормальное распределение) 2) Число с заданным математическим ожиданием (нормальное распределение) Википедию и гугл смотрел, конкретных примеров кода не нашёл. С темой этой вообще не знаком, а там только страшные формулы. Заранее спасибо за помощь! |
10.06.2013, 22:54 | #2 |
Старожил
Регистрация: 02.03.2008
Сообщений: 2,499
|
А чем отличаются 1) и 2) ?
Нормальное распределение определяется двумя параметрами, надо задавать оба. Если не задавать СКВО, то откуда оно возьмется? Это как географические координаты, обязательно нужна долгота и широта. В С++ есть функция в VCL в модуле Math для генерации норм. распределенных случайных чисел: Код:
|
11.06.2013, 01:38 | #3 |
Форумчанин
Регистрация: 11.02.2011
Сообщений: 131
|
Ой. Во втором опечатка вышла. Там экспоненциальное распределение.
|
11.06.2013, 02:00 | #4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
не в С++, а в С++ Builder'е.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
11.06.2013, 02:44 | #5 |
Старожил
Регистрация: 02.03.2008
Сообщений: 2,499
|
Пепел Феникса, ну да, правильно. Я предполагал, что раз С++, то Билдер используют.
БалаШагаЛ, по экспоненциальному. а) С помощью функции Код:
б) затем нормируете его : Y=(X-AFrom)/(ATo-AFrom), получаете стандартно равномерно распределенное число Y в) с помощью формулы Z=-M*Ln(Z+0.000000000001) получаете экспоненциально распределенное число Z с матем. ожиданием M. Добавляется 0.000000000001, чтобы переполнения не было при Z=0. И еще, надо 1 раз вызвать процедуру (фунцию) Randomize. Это просто формулы, в Си сами переведите. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Генерация случайных чисел | N.i.k.o.l.a.y. | Помощь студентам | 1 | 30.10.2012 21:38 |
генератор случайных величин | Dane4ka | Помощь студентам | 6 | 13.04.2011 20:10 |
Генерация случайных чисел?! | Evgeny_1 | Фриланс | 12 | 17.03.2010 14:23 |
Анализ генератора случайных величин | 3bukvy | Софт | 16 | 15.09.2009 07:41 |
Генерация случайных... | Яр|/||< (^_^) | Общие вопросы Delphi | 2 | 22.06.2009 21:33 |