17
src/lib9/frand.c
Normal file
17
src/lib9/frand.c
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
#include <u.h>
|
||||||
|
#include <libc.h>
|
||||||
|
|
||||||
|
#define MASK 0x7fffffffL
|
||||||
|
#define NORM (1.0/(1.0+MASK))
|
||||||
|
|
||||||
|
double
|
||||||
|
p9frand(void)
|
||||||
|
{
|
||||||
|
double x;
|
||||||
|
|
||||||
|
do {
|
||||||
|
x = lrand() * NORM;
|
||||||
|
x = (x + lrand()) * NORM;
|
||||||
|
} while(x >= 1);
|
||||||
|
return x;
|
||||||
|
}
|
||||||
@@ -102,6 +102,7 @@ LIB9OFILES=\
|
|||||||
execl.$O\
|
execl.$O\
|
||||||
exitcode.$O\
|
exitcode.$O\
|
||||||
fcallfmt.$O\
|
fcallfmt.$O\
|
||||||
|
frand.$O\
|
||||||
get9root.$O\
|
get9root.$O\
|
||||||
getcallerpc-$OBJTYPE.$O\
|
getcallerpc-$OBJTYPE.$O\
|
||||||
getenv.$O\
|
getenv.$O\
|
||||||
|
|||||||
Reference in New Issue
Block a user