Rand() - не рандомит как должен

Тема в разделе "C и С++ FAQ", создана пользователем student55, 9 июл 2010.

  1. student55

    student55 Member

    Репутация:
    0
    Регистрация:
    13 мар 2010
    Сообщения:
    13
    Симпатии:
    0
  2. hosm

    hosm * so what *

    Репутация:
    0
    Регистрация:
    18 май 2009
    Сообщения:
    2.442
    Симпатии:
    8
    а о "затравке" для рендома в виде seed или randomize (не помню, как правильно в синтаксисе с++), никогда не слышали?
     
  3. Mice

    Mice Гость

    Репутация:
    0
    Включить <ctime> и <cstdlib>, после чего, до использования функции rand(), нужно затравить генератор начальным значением (в данном случае затравляем чем - то, связанным с системным временем).
    Это делает функция srand (time(NULL)), по крайней мере я делаю именно так
     
  4. DarkKnight

    DarkKnight Well-Known Member

    Репутация:
    0
    Регистрация:
    1 авг 2010
    Сообщения:
    653
    Симпатии:
    0
    Именно для Борланд-компиляторов функция
    Код:
    randomize();
     
  5. Гость

    Репутация:
    0
    Вот пример кода:
    Код:
    #include <stdlib.h>
    #include <time.h>
    #include <iostream.h>
    
    void main (void)
    {
    srand ((unsigned) time (NULL));
    cout << rand () << endl;
    }
    Выдаёт случайное число около 32000.
     
  6. lazybiz

    lazybiz Well-Known Member

    Репутация:
    0
    Регистрация:
    3 ноя 2010
    Сообщения:
    1.339
    Симпатии:
    0
    При чем если нужно число от 0 до (<) N, то получается:
    Код:
    rand() % N
     
Загрузка...
Похожие Темы - Rand() не рандомит
  1. [ixTor]
    Ответов:
    0
    Просмотров:
    4
  2. woolf1514
    Ответов:
    6
    Просмотров:
    44
  3. Мария Смирнова
    Ответов:
    0
    Просмотров:
    62
  4. Мария Смирнова
    Ответов:
    0
    Просмотров:
    28
  5. Vander
    Ответов:
    2
    Просмотров:
    571

Поделиться этой страницей