Math.random () Код источника? - PullRequest
0 голосов
/ 14 февраля 2011

из документации ActionScript 3.0:

Глобальные функции> Math.random ()

Возвращает псевдослучайное число n, где0 <= n <1. Возвращаемое число вычисляется нераскрытым образом и является «псевдослучайным», потому что вычисление неизбежно содержит некоторый элемент неслучайности. </em>

i 'Я заинтересован в чтении исходного кода для Math.random () и предполагаю, что он такой же в других языках на основе C, таких как AS3.это доступно для просмотра?

Кто-нибудь может объяснить, какие элементы делают код псевдослучайным и почему?Разве невозможно создать функцию, которая возвращает действительно случайное значение?

Ответы [ 3 ]

2 голосов
/ 14 февраля 2011

Существует целая куча функций псевдослучайного генератора функций - наиболее распространенная, если вы не используете криптографию высокого уровня, вероятно, является линейной конгруэнтностью - см. wiki и ссылки на код реализации.

1 голос
/ 14 февраля 2011

Чтобы получить реальные случайные числа, вы можете использовать некоторые веб-сервисы, такие как random.org
Использует случайность от атмосферного шума

0 голосов
/ 14 февраля 2011

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...