Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Генерация случайных чисел

18K
04 декабря 2007 года
FerdoPerdoz@
13 / / 24.03.2007
Дорогие граждане! Помогите пожалуйста с генерацией случайных чисел
(rand()%100 работает плохо)! Есть ли какие-нть функции в STL? Заранее благодарен!:):):)
13K
04 декабря 2007 года
Alex_soldier
102 / / 29.01.2007
Можно накапливать среднее значение и дисперсию,
на их основании вносить коррективы в генерируемое на следующем шаге число.
3
04 декабря 2007 года
Green
4.8K / / 20.01.2000
Цитата: FerdoPerdoz@
Дорогие граждане! Помогите пожалуйста с генерацией случайных чисел
(rand()%100 работает плохо)! Есть ли какие-нть функции в STL? Заранее благодарен!:):):)


А при чем тут STL ?
И чем rand работает плохо?

5.5K
04 декабря 2007 года
[Veter]
91 / / 25.09.2007
rand() в С++ как и random() в Паскале или Делфи работают оч "неслучайно". При запуске программы эти функции дают всевремя одинаковое число. Вот у себя проверял: при запуске приложения я в лейбл присваиваю rand(100) и при каждом запуске получаю 66.
Ету проблему можно решить только написанием своей собственной функции.
У моего одногрупника такая курсовая так что если кого интересует пишите на [email]gm-ajax@hotmail.com[/email]
P.S. код на ассемблере так что работает довольно быстро и качественно :)
1.6K
04 декабря 2007 года
Vov4ick
476 / / 01.02.2007
Посмотри хелп по функциям rand, srand и random, randomize. Правда два последних макроса присутствуют не во всех реализациях языка. В паскале и других языках картина аналогичная.
Как вариант можно написать свой датчик случайных чисел, благо это несложно и алгоритмов существует несколько.
ЗЫ на асме я тоже свой писал, комбинируя два алгоритма. Результат меня порадовал.
505
04 декабря 2007 года
vAC
343 / / 28.02.2006
[QUOTE='[Veter];223772']rand() в С++ как и random() в Паскале или Делфи работают оч "неслучайно". При запуске программы эти функции дают всевремя одинаковое число. Вот у себя проверял: при запуске приложения я в лейбл присваиваю rand(100) и при каждом запуске получаю 66.
Ету проблему можно решить только написанием своей собственной функции.
У моего одногрупника такая курсовая так что если кого интересует пишите на [email]gm-ajax@hotmail.com[/email]
P.S. код на ассемблере так что работает довольно быстро и качественно :)[/QUOTE]

Это все потому, что не задано опорное значения для псевдо-случайной последовательности, для этого существует функция srand в С++ и randomize в Паскале.
З.Ы. Мне всегда хватало библиотечных функций, если нужно было моделировать СВ из неравномерного распределения, то использовал тот же rand, проблем никаких небыло.
370
04 декабря 2007 года
koval
443 / / 29.08.2005
Советую почитать здесь
350
07 декабря 2007 года
cheburator
589 / / 01.06.2006
Если не нравятся стандартные генераторы (или нужны генераторы неравномерных распределений):
1) boost.random - http://boost.org/libs/random/index.html
2) http://www.agner.org/random/
33K
09 декабря 2007 года
burzum07
5 / / 07.12.2007
чтобы rand() работала "случайно" надо поставить перед ней
srand(time(0));
при этом #include <ctime>
У меня так работала как надо.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог