Rand () генерируя одно и то же число - даже с Srand (время (NULL)) в моем основном!C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Rand () генерируя одно и то же число - даже с Srand (время (NULL)) в моем основном!

Сообщение Anonymous »

Итак, я пытаюсь создать случайный вектор (например, геометрия, а не расширяемый массив), и каждый раз, когда я называю свою случайную векторную функцию, я получаю одинаковое значение x, хотя Y и z разные. < /p>

int main () {
srand ( (unsigned)time(NULL));
Vector a;
a.randvec();
cout

//random Vector
template
void Vector::randvec()
{
const int min=-10, max=10;
int randx, randy, randz;

const int bucket_size = RAND_MAX/(max-min);

do randx = (rand()/bucket_size)+min;
while (randx = max);
x = randx;

do randy = (rand()/bucket_size)+min;
while (randy = max);
y = randy;

do randz = (rand()/bucket_size)+min;
while (randz = max);
z = randz;
}
< /code>

По какой -то причине Randx последовательно вернется 8, тогда как другие числа, похоже, идеально следуют (псевдо) случайности. Однако, если я помесчу призыв определить, скажем, Рэнди перед Randx, Рэнди всегда вернется 8. < /p>

Почему мое первое случайное число всегда 8? Я не собираюсь неправильно?

Подробнее здесь: https://stackoverflow.com/questions/303 ... in-my-main
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»