diff options
author | Damien Doligez <damien.doligez-inria.fr> | 2003-06-12 12:54:51 +0000 |
---|---|---|
committer | Damien Doligez <damien.doligez-inria.fr> | 2003-06-12 12:54:51 +0000 |
commit | a085ee83100caf6b2c51a5ce76eca69f4cb9b59b (patch) | |
tree | b2f446d2117ff175b7a5826e927a8bc4e1d2bde0 /stdlib | |
parent | 7907414f8fa7a982ec1e1afc6eaa4516f550cd41 (diff) |
plus de determinisme (?)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5595 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Diffstat (limited to 'stdlib')
-rw-r--r-- | stdlib/random.ml | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/stdlib/random.ml b/stdlib/random.ml index 2da5e98f0..2c2f2408f 100644 --- a/stdlib/random.ml +++ b/stdlib/random.ml @@ -42,9 +42,9 @@ let default = { (* Returns 30 random bits as an integer 0 <= x < 1073741824 *) let s_bits s = s.idx <- (s.idx + 1) mod 55; - let newval = s.st.((s.idx + 24) mod 55) + s.st.(s.idx) in + let newval = (s.st.((s.idx + 24) mod 55) + s.st.(s.idx)) land 0x3FFFFFFF in s.st.(s.idx) <- newval; - newval land 0x3FFFFFFF + newval ;; (* Returns a float 0 <= x < 1 with at most 90 bits of precision. *) |