ref: c9d2fecbd06d0e9efc2fa16f214f1612a9a40d93
dir: /sys/src/libc/port/frand.c/
#include <u.h> #include <libc.h> #define MASK 0x7fffffffL #define NORM (1.0/(1.0+MASK)) double frand(void) { double x; do { x = lrand() * NORM; x = (x + lrand()) * NORM; } while(x >= 1); return x; }