[LC++]Random numbers
Dan hursh
hursh at sparc.isl.net
Mon Sep 3 04:42:49 UTC 2001
Actually,I think Stroustrup had an interesting class in his book,
but I don't know how good it was. It was uniform, and he had and
exponential distribution implemented too. I once made an implementation
of it that shared one seed of all of the objects.
Dan
On Sun, 2 Sep 2001, Yosi wrote:
> Hi,
>
> While on the topic of random numbers, can anyone on the list recommend
> a platofrm-independent implementation of a PRNG (pseudo random
> generator), preferably in C++, but one in C will just as good. I'm more
> interested in having an implementation that works on UNIX/Windows/Novell
> and care less if it implemented in C or C++.
>
> Sincerely,
> Yosi
>
> >From: Mark Phillips <mark at austrics.com.au>
> >Reply-To: tuxcpprogramming at lists.linux.org.au
> >To: Linux C++ Programming List <tuxcpprogramming at lists.linux.org.au>
> >Subject: [LC++]Random numbers
> >Date: Fri, 31 Aug 2001 17:23:26 +0930
> >
> >Hi,
> >
> >Doing "man 3 rand" on a linux system gives the following information
> >about random number generation:
> >
> > The versions of rand() and srand() in the Linux C Library
> > use the same random number generator as random() and
> > srandom(), so the lower-order bits should be as random as
> > the higher-order bits. However, on older rand()
> > implementations, the lower-order bits are much less random
> > than the higher-order bits.
> >
> > In 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 (2nd ed., p. 277)), the following comments are
> > made:
> > "If you want to generate a random integer between 1
> > and 10, you should always do it by using high-order
> > bits, as in
> >
> > j=1+(int) (10.0*rand()/(RAND_MAX+1.0));
> >
> > and never by anything resembling
> >
> > j=1+(rand() % 10);
> >
> > (which uses lower-order bits)."
> >
> >Is the comment from Numerical Recipes in C based on older versions
> >of rand()? Ie is it that the first method above (of generating
> >a number between 1 and 10) used to be preferable to the second
> >method, but now with improved random number generators, the
> >second method is just as good --- (and quicker!)??
> >
> >Thanks,
> >
> >Mark.
>
>
> _________________________________________________________________
> Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp
>
> _______________________________________________
> This is the Linux C++ Programming List
> : http://lists.linux.org.au/listinfo/tuxcpprogramming List
>
More information about the tuxCPProgramming
mailing list