Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как получить случайное число математическим методом?

Eternal Neverend Профи (584), на голосовании 14 лет назад
Дополнен 14 лет назад
Давно уже интересует этот вопрос - как в комп. системах реализован алгоритм рандомизации, ведь каждый раз число должно быть разное, без переодичностей. Но как известно, в физике, в том числе математике и электронике небывает случайных процессов, на все есть причины. Сначала была мысль что в МК есть отдельное устройство, которое улавливает внешние помехи и преобразует их в случайные числа.
Кто знает, опишите пожалуйста в кратце процесс ну или предположения?
Дополнен 14 лет назад
Давно уже интересует этот вопрос - как в комп. системах реализован алгоритм рандомизации, ведь каждый раз число должно быть разное, без переодичностей. Но как известно, в физике, в том числе математике и электронике небывает случайных процессов, на все есть причины. Сначала была мысль что в МК есть отдельное устройство, которое улавливает внешние помехи и преобразует их в случайные числа.
Кто знает, опишите пожалуйста в кратце процесс ну или предположения?
Дополнен 14 лет назад
сори за дабл пост
Голосование за лучший ответ
NoSpam NoSpam Знаток (282) 14 лет назад
Математически вряд ли это возможно. Ведь все равно это будет какой-то алгоритм.
В комп. системах простейший ГСЧ можно получить используя системное время (милисекунды или еще меньше)
Еще в некоторых криптосистемах для генерации ключа пользователя просят двигать мышь и жать на клавиши - вот тут более - менее слуайно человек генерирует ключ
Jurijus Zaksas Искусственный Интеллект (439925) 14 лет назад
Вкратце - есть рекурентная функция, которая переустанавливается по таймеру на какое-то место и гонит ту же самую последовательность цифр, только с разного места каждый раз. А вообще реализация может отличаться от языка к языку.
Существуют также устройства, позволяющие получать настоящие случайные числа, стоимость такого устройства ок. 1000 евро.

Подробнее тут.
Gam Мыслитель (6314) 14 лет назад
Про устройства за 1000 евро посмешил. Почитайте труды криптографов, они находят закономерности, даже если случайные числа получают на основе электромагнитных волн шума.
Истинно случайные события в природе, это только процесс деления атома, но соответственно в домашних условия процесс деления атома например плутония рассмотреть невозможно.

А получаю сейчас псевдослучайные числа на основе формулы. Посмотрите алгоритмы псевдослучайных чисел у вики.
Кrab Bark Просветленный (22470) 14 лет назад
В компьютерах используются алгоритмы вычисления псевдослучайных чисел, по всем статистическим критериям неотличимых от случайных, например, так называемый линейный конгруентный метод. Начальное же число задается обычно текущим временем.
В микрокалькуляторах, вероятно, используются такие же алгоритмы, хотя откуда берут начальное значение, я не в курсе (можно брать, например, время нажатия клавиши).
Александр Искусственный Интеллект (298864) 14 лет назад
не случайное, а псевдослучайное.. .
как вы уже упомянули, у всего есть причина.
в данном случае, для любого числа можно найти алгоритм вычисления этого числа, а значит никакой случайности не останется - останется чистой воды определённость.
Похожие вопросы