Сообщение от B~Vladi
|
Это уже на совести реализаций, как они получают "случайное" число. Зато по коду всё понятно.
Мне известно, что процессор в принципе не может генерировать случайные числа.
|
Не совсем верные рассуждения.
Случайное число случайному числу рознь, и у них есть ряд качеств и характеристик, по которым вполне определенно можно сказать, ч случайные числа полученные одни алгоритмом лучше других.
Одним из таких качеств/требований является равномерное распределение генерируемых чисел по всему множеству
Есть и более строгие критерии:
http://ru.wikipedia.org/wiki/%D0%A2%...%D1%8B_diehard
Приведу более очевидный пример хорошого и плохого случайного числа(целое от 0 до 2)
var q = [0,0,0];
for(var i = 0; i < 10000; i++) {
q[Math.floor(Math.random()*2.01)]++
}
console.log(q);
var q = [0,0,0];
for(var i = 0; i < 10000; i++) {
q[Math.floor(Math.random()*3)]++
}
console.log(q);
Цитата:
|
[5029, 4923, 48]
[3409, 3301, 3290]
|
Как видим в первом случае число 2 выпадает гораздо реже остальных, а во втором случае события более равновероятны.