I'm coming up on infra-red, Forget your running, I will find you
Скажите, пожалуйста, как пользоваться стандартными srand и rand в Visual C++ 2008 Express? Я хочу получить случайное значение для некой переменной, вот что я пишу, например:
srand(0); a=rand()-50;
Но он мне выдает всё время одно и тоже значение при каждом запуске программы. Почему так? Как правильно воспользоваться srand и rand? Приведите, пожалуйста, код.
srand(0); a=rand()-50;
Но он мне выдает всё время одно и тоже значение при каждом запуске программы. Почему так? Как правильно воспользоваться srand и rand? Приведите, пожалуйста, код.
srand( (unsigned)time( NULL ) );
mikluho, спасибо большое, работает) почему мы пишем то, что в скобках у вас? Мы как-то связываем с текущим временем?
Есть ли в той же среде программирования источники истинно случайных чисел, как например линуксоидный urandom?
Да? Вы уверены? Значит квантовая механика ложная теория? И тепловой шум предсказуем?
А вообще я уточнил про random.
Насчет urandom'а ошибся, кстати, это как раз ГПСЧ в линукс. А random это ГСЧ.
А тепловой шум?
Линукс использует счетчик тактов процессора. Также хороший тепловой шум дает АЦП на звуковой карте. Правда мощность у них не очень большая, кажется порядка нескольких тысяч случайных байт в секунду.