Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.05;
Скачать: CL | DM;

Вниз

Вопрос про случайные числа   Найти похожие ветки 

 
Vasya.ru ©   (2004-11-13 11:29) [0]

Написал тут свой рандомайз (часть моей курсовой), за начальное значение брал GetTickCount(), проблема в том, что если использовать его в цикле, время в миллисекундах измениться не успевает, и генерируются одинаковые числа. Собственно вопрос: а какие еще варианты получения первого значения существуют? И где посмотреть исходник Random"а?


 
Vaitek ©   (2004-11-13 12:30) [1]

Можно так пропробывать, не знаю что получться - тервер не моя стихия, но пока таймер не обновился в качестве семени использовать предыдущее случайное число сгенерированное тобою.


 
kaZaNoVa ©   (2004-11-13 13:13) [2]

Vasya.ru ©   (13.11.04 11:29)
k:Int64;
QueryPerformanceCounter(k);


 
ferr ©   (2004-11-13 13:19) [3]

Cчётчик тактов...
А зачем Randomize в цикле?


 
Burmistroff   (2004-11-13 14:18) [4]

>Vaitek
Так кажется даже большинство алгоритмов и работают (рекурентно) :)

>Vasya.ru
А, кстати, какой алгоритм-то? что-то вроде
x{sub n+1}:=[x{sub n}*m + c], где [] - взятие дробной части
?


 
Vasya.ru ©   (2004-11-13 15:07) [5]

Vaitek ©   (13.11.04 12:30) [1]
Так и делаю - генерю массив случайных чисел, где первое - GetTickCount, потом мешаю массив, и выбираю случайное.
Burmistroff   (13.11.04 14:18) [4]
Квадратичный конгруэнтный метод - (A * X * X + B * X + C) mod M


 
Burmistroff   (2004-11-13 19:30) [6]

Понятно. А как распределение-то при этом, более равномерное получается (в плане сильно ли он себя оправдывает)?


 
Vasya.ru ©   (2004-11-13 23:07) [7]

Burmistroff   (13.11.04 19:30) [6]
У меня еще перемешивание методом Макларена - Марсальи, а вообще, если - бы не задача по курсовой, сделал бы не квадратичный с перемешиванием, а линейный с перемешиванием  - быстрее, а по качеству также


 
Burmistroff   (2004-11-14 00:19) [8]

OK :)
Ну тогда последний вопрос - а как производить проверку того, что получаемое распределение действительно хорошее-то? Просто график+гистограмма? Или какие-нибудь хорошие методы есть?


 
Burmistroff   (2004-11-14 00:23) [9]

У меня задача была просто на асме сделать. Сделал, сравнил с дельфовым и встроенным в Mathematica4.2. В принципе очень похожи, только у меня в гистограмме разброс высто стольбцов получился где-то, скажем 30-50, а у них 35-45. Вот думаю может еще как сравнить можно :)


 
Vasya.ru ©   (2004-11-15 00:18) [10]

Burmistroff   (14.11.04 00:19) [8]
Д. Кнут "Искусство программирования" том 2 "получисленные алгоритмы" - там все очень подробно описано, особенно полезно "Спектральный тест" разобрать



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

Текущий архив: 2004.12.05;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.031 c
3-1099915999
Danila
2004-11-08 15:13
2004.12.05
InterBase 6.0 Как получить список полей из системной таблици


3-1099815997
klerk
2004-11-07 11:26
2004.12.05
Update БД


3-1099803279
SergP
2004-11-07 07:54
2004.12.05
Как получить коментарий к полю?


1-1100659587
uses-mind.dll
2004-11-17 05:46
2004.12.05
как настроить дэльфи на удаление собственного мусора ?


4-1098694249
Wolffgang
2004-10-25 12:50
2004.12.05
Серийник винта.