qrand() дает всегда одинаково разные числа |
Здравствуйте, гость ( Вход | Регистрация )
qrand() дает всегда одинаково разные числа |
RazrFalcon |
24.12.2010, 1:35
Сообщение
#1
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
к примеру 10, 16, 35, 78. при следующем запуске будут такие же.
как сделать, что вообще разные были? поток один. задаю так:
max всегда одинаково, практически |
|
|
igor_bogomolov |
24.12.2010, 2:31
Сообщение
#2
|
Профессионал Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: 29 |
Цитата(assistant) void qsrand ( uint seed ) Thread-safe version of the standard C++ srand() function. Sets the argument seed to be used to generate a new random number sequence of pseudo random integers to be returned by qrand(). The sequence of random numbers generated is deterministic per thread. For example, if two threads call qsrand(1) and subsequently calls qrand(), the threads will get the same random number sequence. This function was introduced in Qt 4.2. See also qrand(). т.е. необходимо сначала инициализировать seed перед использованием qrand
P.S. Не забываем следующий раз пользоваться поиском по форуму, прежде чем создать тему. |
|
|
RazrFalcon |
24.12.2010, 16:52
Сообщение
#3
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
Большое спасибо. Работает.
Я поиском пользовался, уже парочка таких тем была, просто я думал нужно вместо qrand использовать qsrand и естествено оно не работало. а в тех темах было и с этим не компилило.
|
|
|
RazrFalcon |
19.1.2011, 20:29
Сообщение
#4
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
А как сделать что бы не повторялись числа?
чтобы от 0 до 100 к примеру прошло рандомно, без совпадений, а потом снова. |
|
|
igor_bogomolov |
19.1.2011, 20:33
Сообщение
#5
|
Профессионал Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: 29 |
А как сделать что бы не повторялись числа? http://www.cplusplus.com/reference/algorithm/random_shuffle/
чтобы от 0 до 100 к примеру прошло рандомно, без совпадений, а потом снова. |
|
|
RazrFalcon |
19.1.2011, 20:41
Сообщение
#6
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
Эээ...
а на qt? |
|
|
igor_bogomolov |
19.1.2011, 20:47
Сообщение
#7
|
Профессионал Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: 29 |
а что стандартный с++ уже не подходит?
На Qt нет готовой функции. |
|
|
RazrFalcon |
19.1.2011, 20:50
Сообщение
#8
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
Я так понимаю, это налог, если бы я просто сам проверил, циклом?
|
|
|
Текстовая версия | Сейчас: 19.12.2024, 1:18 |