xref: /plan9/sys/src/cmd/unix/drawterm/libc/frand.c (revision 8ccd4a6360d974db7bd7bbd4f37e7018419ea908)
1 #include	<u.h>
2 #include	<libc.h>
3 
4 #define	MASK	0x7fffffffL
5 #define	NORM	(1.0/(1.0+MASK))
6 
7 double
frand(void)8 frand(void)
9 {
10 	double x;
11 
12 	do {
13 		x = lrand() * NORM;
14 		x = (x + lrand()) * NORM;
15 	} while(x >= 1);
16 	return x;
17 }
18