Другие языки программирования и технологии

Программисты, объясните, пожалуйста, как компьютер выполняет задачу случайного выбора числа из ряда чисел?

В компьютерах ничего случайного нет. Были когда-то попытки сделать настоящий стохастический модуль, основанный на Броуновском движении, но особой популярости он не получил. Поэтому компьютер берет случайные вещи из внешнего мира. Например, время запуска программы, положение мыши на экране и т. д. В зависимости от этого производится переустановка генератора псевдослучайных чисел - специальной функции, которая выдает последовательность чисел в диапазоне [0..1) с более-менее равномерным распределением в этом интервале. Умножив данное число на коэффициент можно расширить интервал до определенных пределов, ограниченных величиной мантиссы исходного псевдослучайного числа.
Так вот. Если у тебя есть ряд чисел с известной формулой Н-ного члена, ты получаешь по вышеуказанной схеме псевдослучайный номер члена и вычисляешь этот член. Если есть просто цифры россыпью - засовываешь их в массив и вычисляешь индекс массива, потом выбираешь из него число по этому индексу. Доступно?
Александр Теличко
Александр Теличко
51 950
Лучший ответ
Обычно используется линейный конгруэнтный метод (x=(a*x+c) mod m) как самый простой и быстрый.
))) насмешил. и все сразу стали выигрывать в лотерею.... как узнаете, шепните. давно хотела личный вертолет...
Один из таких генераторов является такая последовательность: n[i+1] = (a*n + c) mod m, где и [i+1] индексы
Ванек Орлов
Ванек Орлов
2 833
Ну частенько для этих целей используется текущее время или какая либо его часть к примеру количество миллисекунд, и возможно какимнить способом преобразованная.
К примеру если к этому числу (млск) применить функцию нахождения остатка от деления, то можно получить псевдослучайное значение от 0 до делитель-1

Похожие вопросы