Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number

Re: is rand() random

by Abigail-II (Bishop)
on Jun 19, 2002 at 15:32 UTC ( #175724=note: print w/replies, xml ) Need Help??

in reply to is rand() random

rand() uses a random number generator from your platform. This function typically returns an integer in the range 0 to some maximum RAND_MAX. That is, the output consists of a fixed number of bits. Regardless whether you are using a pseude random number generator (which will have some kind of periodicity), or some true random source. You get 15, 16, 31, 32, 48 or some other number of bits.

All Perl is doing is do some scaling, dividing the number it got from the system by the maximum the system can return, and then multiplying it by the argument you gave to rand. Hence, the argument you give to rand has little influence on the "randomness" (there might be some roundoff errors, but they should not have much influence).

If your program repeatedly generates output, I guess your systems C library is broken. Try translating the program to an equivalent C program and see what happens.


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://175724]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (2)
As of 2021-02-27 04:44 GMT
Find Nodes?
    Voting Booth?

    No recent polls found