Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Библиотечный генератор псевдослучайных чисел в C (rand, srand)

42K
01 декабря 2008 года
Andrew Marcipaka
5 / / 19.11.2008
Привет всем!
Недавно столкнулся с задачей - сгенерировать случайные числа в диапозоне [a;b]. Помнится, как-то делал такое. Даже формула по-моему для этого есть. А сейчас не могу вспомнить. Прочитал даже в man:
Цитата:

In Numerical Recipes in C: The Art of Scientific Computing (William H. Press, Brian P. Flannery, Saul A. Teukolsky, William T. Vetterling; New York: Cambridge University Press, 1992 (2nd ed., p. 277)), the following comments are made:

"If you want to generate a random integer between 1 and 10, you should always do it by using high-order bits, as in

j = 1 + (int) (10.0 * (rand() / (RAND_MAX + 1.0)));

and never by anything resembling

j = 1 + (rand() % 10);

(which uses lower-order bits)."



Это работает, но только тогда, когда подставляешь значения a и b в выражение, а когда a и b - переменные и считываются, такое не прокатывает.

С преобразованием типов всё нормально, проверял.

7.3K
01 декабря 2008 года
H010d Freeze
143 / / 08.08.2006
Цитата:

Это работает, но только тогда, когда подставляешь значения a и b в выражение, а когда a и b - переменные и считываются, такое не прокатывает.



А можно увидеть неработающий код и узнать, что именно не работает?

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог