The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

srand48 (3)
  • srand48 (3) ( FreeBSD man: Библиотечные вызовы )
  • >> srand48 (3) ( Русские man: Библиотечные вызовы )
  • srand48 (3) ( Linux man: Библиотечные вызовы )
  • srand48 (3) ( POSIX man: Библиотечные вызовы )
  •  

    НАЗВАНИЕ

    drand48, erand48, lrand48, nrand48, mrand48, jrand48, srand48, seed48, lcong48 - генерируют равномерно распределенные псевдослучайные числа  

    СИНТАКСИС

    #include <stdlib.h>
    
    double drand48(void);
    
    double erand48(unsigned short xsubi[3]);
    
    long int lrand48(void);
    
    long int nrand48(unsigned short xsubi[3]);
    
    long int mrand48(void);
    
    long int jrand48(unsigned short xsubi[3]);
    
    void srand48(long seedval);
    
    unsigned short int *seed48(unsignedshort seed16v [3]);
    
    void lcong48(unsigned short param[7]);
    
     

    ОПИСАНИЕ

    Эти функции генерируют псевдослучайные числа, используя линейный алгоритм и 48-битную целочисленную арифметику.

    Функции drand48() и erand48() возвращают неотрицательное число (с плавающей точкой) двойной точности, находящееся в промежутке [0.0 , 1.0).

    Функции lrand48() и nrand48() возвращают неотрицательное длинное целое число, находящееся между 0 и 2^31.

    Функции mrand48() и jrand48() возвращают длинное целое число, находящееся между -2^31 и 2^31.

    Функции srand48(), seed48() и lcong48() - это инициализационные функции, одна из которых должна быть вызвана перед использованием drand48(), lrand48() или mrand49(). Функции erand48(), nrand48() и jrand48() не требуют инициализации.

    Все функции работают при помощи сгенерированной последовательности 48-битных целых чисел Xi, в соответствии с линейной конгруэнтной формулой:

    Xn+1 = (aXn + c) mod m, где n >= 0

    Параметр m = 2^48. Если lcong48() не вызывался, a и c установлены как:

    a = 0x5DEECE66D c = 0xB

    Величина, возвращаемая любой из функций: drand48(), erand48(), lrand48(), nrand48(), mrand48() или jrand48(), - вычисляется при одновременной генерации следующей 48-битной Xi-последовательности. Когда соответствующее количество битов, в зависимости от типа данных, будет возвращено, происходит копирование его из старших битов Xi и преобразование в возвращаемое значение.

    Функции drand48(), lrand48() и mrand48() сохраняют последние сгенерированные 48 битов Xi во внутреннем буфере. Функции erand48(), nrand48() и jrand48() требуют от вызывающей программы предоставить место для хранения величины Xi в массиве xsubi. Функции инициализируются начальной величиной Xi, указанной в массиве при первом вызове.  

    СООТВЕТСТВИЕ СТАНДАРТАМ

    SVID 3  

    ЗАМЕЧАНИЯ

    Эти функции считаются устаревшими в SVID 3. Рекомендуется использовать rand(3).  

    СМ. ТАКЖЕ

    rand(3), random(3)


     

    Index

    НАЗВАНИЕ
    СИНТАКСИС
    ОПИСАНИЕ
    СООТВЕТСТВИЕ СТАНДАРТАМ
    ЗАМЕЧАНИЯ
    СМ. ТАКЖЕ


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру