 |
|
рэндом- работа по алгоритму или поиск случайного? |

07.01.2008, 14:52
|
|
Banned
Регистрация: 22.12.2007
Сообщений: 660
С нами:
9677126
Репутация:
1158
|
|
рэндом- работа по алгоритму или поиск случайного?
В книге "php" (Крис Ньюмен) нашел одну интересную вещь. Здесь указывается что не бывает рэндомных значений. Все делается по алгоритму программы и если посчитать все с полным соответствием то можно предугадать резутльтат рэндомного значения.
Прямым текстом написано что не бывает воще в программировании случайных выражений все состоит строго по циклу.
1. Правду ли я прочитал?
2. (если правду) то можно ли как нибудь сделать вобще программу которая действительно будет высчитывать случайное число т.е. которое невозможно посчитать. ( я подразумеваю под тем что не человек будет например зниматся высчитыванием зарание значения рэндомного результата, а программа написанная для вычисления зарание предвиденного результата)
3. И все же, по какому алгоритму работает оператор random?
4. Хотелось бы ещё получить сведеня в целом о работе этого механизма и все что с ним связано, где его например можно применять? гже он полезен, а где можно обойтись и другим?
Последний раз редактировалось procedure; 07.01.2008 в 15:00..
|
|
|

07.01.2008, 14:54
|
|
Участник форума
Регистрация: 25.11.2007
Сообщений: 119
С нами:
9715507
Репутация:
88
|
|
Обычно это число берется с времени... т.е. скажем считывается время (милесекунды) и это число и будет случайным.
|
|
|

07.01.2008, 14:56
|
|
Banned
Регистрация: 22.12.2007
Сообщений: 660
С нами:
9677126
Репутация:
1158
|
|
а мне казалось что все делается намного проще, с помощью массивов...
хотя кто какой алгоритм придумает...
|
|
|

07.01.2008, 14:59
|
|
Участник форума
Регистрация: 05.05.2007
Сообщений: 171
С нами:
10009826
Репутация:
435
|
|
Абсолютно случайного числа сделать нельзя, все рандомы это псевдослучайные числа, предугадать ? ну в зависимости имееться ли ограничения в рандоме, если от 1 до 100 то можно, а вот больше, имхо практически невозможно. Даже граматно организованый рандом, можно сделать так что за большое время перебора нисовпадет ниодно значение...
Незнаю как в Пхп, но в Си алгоритм зависит от того как ты будешь этот рандом организовывать, тип данных, можно в зваисимости от времени и прочего.
Последний раз редактировалось Sharingan; 07.01.2008 в 15:02..
|
|
|

07.01.2008, 15:04
|
|
Banned
Регистрация: 22.12.2007
Сообщений: 660
С нами:
9677126
Репутация:
1158
|
|
Sharingan->ну в принципе, я почему то уверен что можно....даже допустим по этому же времени....мы пишем программу в которую тупо забиваем время, с которого будет выведено случайное число...и по этому же алгоритму мы вычисляем результат....
Так же допустим если мы запускаем простую функцию нахожденияслучайного числа в каком либо промежутке чисел, то это число можно предугадать заглянув уже в сам код C. понимаешь меня?
|
|
|

07.01.2008, 15:08
|
|
Banned
Регистрация: 20.06.2005
Сообщений: 880
С нами:
10994966
Репутация:
1332
|
|
Здесь указывается что не бывает рэндомных значений. Все делается по алгоритму программы и если посчитать все с полным соответствием то можно предугадать резутльтат рэндомного значения.
ну вообще если только алгоритм работает в контексте одного процесса и не зависит от "жизненных" характеристик - время, температура и т.п.
>>3. И все же, по какому алгоритму работает оператор random?
математическому - в общем случае задается рекурентная последовательность с заданным первым элементом и большим периодом, то есть если выпало число x, то в следующий раз оно выпадет только через сравнительно большое число итераций. почитай кнута
(если правду) то можно ли как нибудь сделать вобще программу которая действительно будет высчитывать случайное число т.е. которое невозможно посчитать.
да можно, программно, но не алгоритмически.
|
|
|

07.01.2008, 15:09
|
|
Участник форума
Регистрация: 05.05.2007
Сообщений: 171
С нами:
10009826
Репутация:
435
|
|
Ну так, смотри несмотря на время, рандом может выдать тысячи значений, ну поставишь ты такой же алгоритм, и все равно оно выдаст не то значение что срандомизировало, ну если сомниваешься, попробуй написать программу...
|
|
|

07.01.2008, 15:12
|
|
Banned
Регистрация: 22.12.2007
Сообщений: 660
С нами:
9677126
Репутация:
1158
|
|
а именно на php можно? Как ты себе представляешь эту программу?
|
|
|

07.01.2008, 15:13
|
|
Banned
Регистрация: 22.12.2007
Сообщений: 660
С нами:
9677126
Репутация:
1158
|
|
Ну так, смотри несмотря на время, рандом может выдать тысячи значений, ну поставишь ты такой же алгоритм, и все равно оно выдаст не то значение что срандомизировало, ну если сомниваешься, попробуй написать программу...
очень большой процесс геморойа...лучше представить это все в теории и убедится..
|
|
|

07.01.2008, 15:16
|
|
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
С нами:
10721066
Репутация:
4360
|
|
>>4. Хотелось бы ещё получить сведеня в целом о работе этого механизма и все что с ним связано, где его например можно применять? гже он полезен, а где можно обойтись и другим?
Псевдослучайных чисел обычно хватает за глаза. В шифровании для генерации ключа обычно используются более сильные коды, например, Win PGP просит подвигать мышкой для генерации ключа и считывает ее перемещения
|
|
|
|
 |
|
Предыдущая тема
Следующая тема
Похожие темы
|
| Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
|
Хакер и закон!
|
SladerNon |
Болталка |
17 |
12.11.2009 09:42 |
|
Поиск руководства
|
Николь |
Болталка |
0 |
03.02.2004 14:57 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|