Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Случайные числа в Perl (https://forum.antichat.xyz/showthread.php?t=50857)

biophreak 09.10.2007 22:33

Случайные числа в Perl
 
Народ, собственно интерисует генератор случайных комбинаций...
Только не надо сразу орать про rand() и прочее...интерисует именно случайность, а не псевдослучайность...
У кого есть какие идеи?
Думаю что генерация по времени\дате и прочей лабуде сразу отпадает ибо воспроизводимо...
Хорошый алгоритм в gpg(pgp) - юзер-ориентированые(грубо говоря), т.е. клики мыши, изменения координат итд итп...

Заранее спасибо!

Sn@k3 09.10.2007 22:39

rand
Синтаксис
rand EXPR
rand
Описание
Функция возвращает случайное вещественное число, принадлежащее диапазону от 0 до EXPR. При этом значение EXPR должно быть положительным числом. Если аргумент не указан, генерируется число в диапазоне от 0 до 1. Эта функция автоматически вызывает srand, если она не вызывалась ранее...

biophreak 09.10.2007 22:44

Прочитай сообщение получше :))
rand - это генератор псевдослучайностей, а интерисует именно генератор случайного значения...по принципу gpg конечно не сделаешь в перле, но все таки еще идеи? ;)

ЗЗЫЖ rand повторяем

Ni0x 09.10.2007 22:52

Все в этом мире псевдослучайно =). Я думаю ты не увидишь разницу между нормальным ГПСЧ и ГСЧ, только мозг извратишь. Хотя, смотри по первой ссылке есть отдельный абзац.
ru.wikipedia.org/wiki/Генератор_ псевдослучайных_чисел
http://ru.wikipedia.org/wiki/Метод_Монте-Карло

Digimortal 10.10.2007 00:24

>> ЗЗЫЖ rand повторяем

не понял этого.. продемонстрируй.. )

если под *nix - то там /dev/urandom к твоим услугам..

biophreak 10.10.2007 00:29

/dev/urandom - повторяем...это генератор псевдослучайностей...
А так называемый генератор случайнх чисел основан не на технологии "пальцем в небо" - он генерит случайную последовательность, в зависимости от некоторых фактов(такты проца, работа мышью(координаты, нажатие, скрол), и многое другое...ссылки на пост выше твоего %))))

ЗЫЖ А насчет повторяемости - у ГПСП(генератор псевдо-случайных последовательностей) - у него ГОРАЗДО больший шанс повторяемости, нежели у ГСП(генератор Случайных последовательностей)

KSURi 10.10.2007 00:34

А почему на перл нельзя сделать вариант с мышкой? - можно, читай perldoc Tk.
А еще есть вариант с клавиатурой: editbox, случайный ввод пользователя и на основе ввода генерация случайного числа.

biophreak 10.10.2007 00:39

Оно-то дело ясное, но приложение будет работать демоном...гденить в углу на сервачке )))
Запущено будет не из под рута.../dev/random не канает из-за своей "тормознутости".
Есть еще идеи...а то я чет в ступоре :\

Digimortal 10.10.2007 01:07

слушай, biophreak,
вот докажи мне, что обычный перловый rand() в твоем скрипте применять нельзя, тока не рассказами про псевдослучайные и случайные последовательности, а конкретным математическим доказательством.. в конце-коцов, ты можешь несколько раз вызвать rand и еще рандомно перемешать полученные последовательности, значительно повысив случайность итоговой последовательности.. =/

KSURi 10.10.2007 01:09

На сонную голову пришел вариант только с rand =\
Код:

my $rand = 'int rand 0xffffff;';
print eval $rand x rand 0xfff;

По идее повторный вызов rand'a на основе рез-та предыдущего вызова rand должен снизить шансы повтора имхо. Причем чем больше вызовов, тем меньше шанс.


Время: 05:28