![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
![]()
Давайте.
Вот Вам ТЗ: Написать датчик случайных чисел, генерирующий случайную величину, являющуюся натуральным числом из диапазона [1,6], вероятности появления которой определяются так: 1 - 0,08 2 - 0,08 3 - 0,32 4 - 0,32 5 - 0,10 6 - 0,10 Я, как видите, сократил количество интервалов до трёх, оставив в каждом интервале по 2 равновероятных значения, но суть задачи - сохранил. С громадным интересом посмотрю на Ваш код! Естественно, ничего против использования внутри него ф-ии rand() не имею. |
![]() |
![]() |
![]() |
#12 | |
Пользователь
Регистрация: 09.04.2011
Сообщений: 30
|
![]() Цитата:
Попробую кратко описать: из исходных вероятностей нам надо сделать 100 бросков чтобы получить соответствующие распределения значений, т.е. известно заранее что после 100 бросков: в 8 случаях выпадет 1, в 32 случаях выпадет 3 и т.д. //Надо описать структуру для хранения данных: Код:
Код:
Код:
Последний раз редактировалось EC.cpp; 10.04.2011 в 13:02. |
|
![]() |
![]() |
![]() |
#13 |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
![]()
Уважаемый (?
![]() ![]() ![]() И ещё. Одним из требований, с необходимостью предъявляемых к Д(П)СЧ, является быстродействие. Ибо в реальных задачах моделирования этот датчик вызывается миллиарды и миллиарды раз. Поэтому использовать в ПО этого типа связанные списки - ну, как бы это помягче выразиться... непрофессионально. Впрочем, ладно. Я готов посмотреть на код, использующий внутри любые структуры данных, лишь бы он соответствовал моему ТЗ. Заранее спасибо. |
![]() |
![]() |
![]() |
#14 | ||
Пользователь
Регистрация: 09.04.2011
Сообщений: 30
|
![]() Цитата:
Говорят - отсутствие стимула. Так вот собственно чтобы качественно реализовать и оттестировать это в коде мне понадобится около дня - зачем мне этим заниматься? Я Вам предоставил алгоритм - ответ на вопрос КАК. А реализовывать это в коде любого языка программирования - работа программиста ![]() Цитата:
|
||
![]() |
![]() |
![]() |
#15 | |
C++
Форумчанин
Регистрация: 27.03.2011
Сообщений: 803
|
![]() Цитата:
Код:
Ищете информацию по C++?
cplusplus.com Последний раз редактировалось Сtrl; 10.04.2011 в 15:17. |
|
![]() |
![]() |
![]() |
#16 |
Пользователь
Регистрация: 09.04.2011
Сообщений: 30
|
![]()
Вероятность выпадания значений фукции rand() не поддается параметризации или систематизации, т.е. нельзя сказать с какой вероятностью какое значение выпадет - это функция генерации воистину случайного числа.
Чуть подробнее о методах порождения случайных величин написано тут (ток на английском) Вышесказанное означает, что Вы обычным применением метода rand() никогда не получите заданное распределение вероятностей. |
![]() |
![]() |
![]() |
#17 | |
C++
Форумчанин
Регистрация: 27.03.2011
Сообщений: 803
|
![]() Цитата:
Ищете информацию по C++?
cplusplus.com |
|
![]() |
![]() |
![]() |
#18 |
Пользователь
Регистрация: 09.04.2011
Сообщений: 30
|
![]()
Вот именно поэтому, я предлагаю использовать этот самый rand() только для выборки 1-го из 100 чисел с последующий его перестановкой в списке - в результате мы получим перемешанную последовательность, но при выводе их на экран вероятности будут соответствовать строго заданным параметрам.
|
![]() |
![]() |
![]() |
#19 |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
![]()
Знаю
![]() Незачем. Если это - не является предметом Вашей профессиональной специализации (так что подходящие исходники - всегда под рукой), то, кроме удовлетворённого тщеславия, - незачем. Но эти Ваши слова только подтверждают мою реакцию на слово "просто", прозвучавшее (не из Ваших, правда, уст) в этом обсуждении. Да? ![]() Хорошо. Я вечером в завалах посмотрю. Если окажется, что они остались на трёхдюймовых дискетах - тогда завтра. |
![]() |
![]() |
![]() |
#20 |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
![]()
Уважаемый Сtrl, я использовал Вашу программку из #15, вызывая её вот таким образом.
Код:
110410.jpg Ну ладно. До вечера! |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
вероятность выпадения в процентах | ololo-schoolboy | Общие вопросы C/C++ | 6 | 25.01.2011 20:54 |
вывод рандомного числа с большей или меньшей вероятностью | unbanned | Паскаль, Turbo Pascal, PascalABC.NET | 6 | 19.01.2011 07:04 |
Алгоритмы. Работа с вероятностью. | anton_kovalev | Помощь студентам | 2 | 21.01.2010 10:27 |
Подпрограмма определяющая вероятность выпадения счастливого билетика. | Doublefaced | Помощь студентам | 9 | 05.08.2009 15:00 |
Делфи(Консоль) и C# - Подпрограммы(Вероятность выпадения «счастливого билетика» ) | Doublefaced | Помощь студентам | 3 | 30.06.2009 22:15 |