| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Random |
| Автор: Leksey 20.3.2005, 16:25 |
| Подскажите, в кокой библиотеке найти нормальную функцию генерирования случайных чисел и кокой header подключить, чтобы ей можно было указать интервал,в котором выдавать результат. |
| Автор: Олег М 20.3.2005, 16:29 |
| а стандартная rand не подходит? |
| Автор: Leksey 20.3.2005, 18:37 |
| rand - Как задать ему интервал в которм должен быть результат . |
| Автор: Олег М 20.3.2005, 18:42 | ||
Наверное так x[0...N]
|
| Автор: Leksey 20.3.2005, 20:52 | ||
Конечно можно и так сделать, чтобы выпадало целое [1..N]:
но почему все время сначала выпадает 3, а потом уже произвольное. Да и хотелось бы не заниматься инициализацией с помощью srand() и ничего не вычислять. |
| Автор: bel_nikita 20.3.2005, 22:43 | ||
|
| Автор: Leksey 20.3.2005, 23:18 |
| Блин, вот я намудрил, а все было так банально. Спаибо bel_nikita. |
| Автор: Goryachev 21.3.2005, 00:01 | ||
| bel_nikita Если я хорошо помню, rand() возвращает число между нулем и единицей. Поэтому данным кодом,
я не понимаю, как ты добиваешся числа больше чем число 1. Поправь меня, если чо-то не то сшифровал... Упс. В stdlib.h написано, что rand() возвращает число между нулем и RAND_MAX. Извиняюсь за глупый пост. Значит в каком то другом языке возвращает между 0 и 1. |
| Автор: versus 21.3.2005, 00:45 | ||
кстати о том что написано:
Вопрос на засыпку: что произойдет если описанной выше методой (int x = rand() % N + 1;) попытаться сгенерировать случайное число с N > RAND_MAX ? |
| Автор: bel_nikita 21.3.2005, 01:31 |
| Получим: RAND_MAX + 1 < N |
| Автор: jorkug 21.3.2005, 06:36 | ||
|