Rechercher une page de manuel
rand
Langue: pl
Version: 1995-05-18 (openSuse - 09/10/07)
Section: 3 (Bibliothèques de fonctions)
NAZWA
rand, srand - generator liczb losowych.SK£ADNIA
#include <stdlib.h> int rand(void); void srand(unsigned int seed);
OPIS
Funkcja rand() zwraca pseudolosow± liczbê ca³kowit± z zakresu pomiêdzy 0 a RAND_MAX.Funkcja srand() ustawia swój argument jako warto¶æ pocz±tkow± dla nowego ci±gu pseudolosowych liczb ca³kowitych zwracanych przez rand(). Ci±gi te s± powtarzalne poprzez wywo³anie srand() z t± sam± warto¶ci± pocz±tkow±.
Je¶li nie podano warto¶ci pocz±tkowej, funkcja rand() automatycznie ustawia tê warto¶æ na 1.
WARTO¦Æ ZWRACANA
Funkcja rand() zwraca warto¶æ z zakresu pomiêdzy 0 a RAND_MAX. Funkcja srand() nie zwraca ¿adnej warto¶ci.UWAGI
Wersje rand() i srand() w bibliotece C Linuksa korzystaj± z tego samego generatora liczb losowych, co random() i srandom(), wiêc mniej znacz±ce bity powinny byæ tak samo losowe jak bity bardziej znacz±ce. Jednak¿e, w starszych implementacjach rand() bity mniej znacz±ce s± znacznie mniej losowe ni¿ bity bardziej znacz±ce.W Numerical Recipes in C: The Art of Scientific Computing (William H. Press, Brian P. Flannery, Saul A. Teukolsky, William T. Vetterling; New York: Cambridge University Press, 1992 (wyd. 2, str. 277)), umieszczono nastêpuj±ce komentarze:
- "Je¶li chcesz wygenerowaæ liczbê losow± spomiêdzy 1 a 10, powiniene¶ zawsze robiæ to korzystaj±c z bardziej znacz±cych bitów, jak w
-
j=1+(int) (10.0*rand()/(RAND_MAX+1.0));
j=1+(rand() % 10);
Generacja liczb losowych jest z³o¿onym zagadnieniem. Ksi±¿ka Numerical Recipes in C (patrz referencje powy¿ej) zawiera doskona³± dyskusjê praktycznych wyników generacji liczb losowych w rozdziale 7 (Random Numbers).
Bardziej teoretyczn± dyskusjê, która równie¿ szeroko omawia wiele praktycznych wyników mo¿na znale¼æ w rozdziale 3 (Random Numbers) Donalda E. Knutha The Art of Computer Programming, tom 2 (Seminumerical Algorithms), wyd. 2; Reading, Massachusetts: Addison-Wesley Publishing Company, 1981.
ZGODNE Z
SVID 3, BSD 4.3, ISO 9899ZOBACZ TAK¯E
random(3), srandom(3), initstate(3), setstate(3)Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre