Форум программистов, компьютерный форум CyberForum.ru

Исходной код функции rand() - C++

Восстановить пароль Регистрация
 
pEntity
10 / 5 / 1
Регистрация: 12.12.2012
Сообщений: 371
08.03.2013, 16:24     Исходной код функции rand() #1
Здравствуйте. Кто может показать эту функцию? Интересно как реализовано.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Dekio
Фрилансер
Эксперт C++
 Аватар для Dekio
5816 / 1214 / 214
Регистрация: 23.11.2010
Сообщений: 3,378
Записей в блоге: 1
08.03.2013, 16:33     Исходной код функции rand() #2
Пример алгоритма mt19937 генератора
http://en.wikipedia.org/wiki/Mersenne_twister
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11835 / 6814 / 769
Регистрация: 27.09.2012
Сообщений: 16,889
Записей в блоге: 2
Завершенные тесты: 1
08.03.2013, 16:34     Исходной код функции rand() #3
Студия 12:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
void __cdecl srand (
        unsigned int seed
        )
{
        _getptd()->_holdrand = (unsigned long)seed;
}
 
 
/***
*int rand() - returns a random number
*
*Purpose:
*       returns a pseudo-random number 0 through 32767.
*
*Entry:
*       None.
*
*Exit:
*       Returns a pseudo-random number 0 through 32767.
*
*Exceptions:
*
*******************************************************************************/
 
int __cdecl rand (
        void
        )
{
        _ptiddata ptd = _getptd();
 
        return( ((ptd->_holdrand = ptd->_holdrand * 214013L
            + 2531011L) >> 16) & 0x7fff );
}
Фрагмент из mtdll.h:
C++
1
_ptiddata __cdecl _getptd(void);  /* return address of per-thread CRT data */
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
08.03.2013, 22:21     Исходной код функции rand() #4
Генерация псевдослучайных последовательностей
Yandex
Объявления
08.03.2013, 22:21     Исходной код функции rand()
Ответ Создать тему
Опции темы

Текущее время: 17:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru