# Module quickrand

- Description
- Function Index
- Function Details

### Quick Random Number Generation

.

Copyright © 2012-2020 Michael Truog

Version: 2.0.2 May 26 2021 18:14:15 ------------------------------------------------------------------------

Authors: Michael Truog (`mjtruog at protonmail dot com`).

## Description

### Quick Random Number Generation

## Function Index

seed/0 | #### Seed random number generation. .
strong_float/0 | #### Return an Erlang double-precision random number with the range [0.0 .. 1.0]. .
strong_floatL/0 | #### Return an Erlang double-precision random number with the range [0.0 .. 1.0). Left portion of the 0.0 to 1.0 range.
strong_floatM/0 | #### Return an Erlang double-precision random number with the range (0.0 .. 1.0). Middle portion of the 0.0 to 1.0 range.
strong_floatR/0 | #### Return an Erlang double-precision random number with the range (0.0 .. 1.0]. Right portion of the 0.0 to 1.0 range.
strong_uniform/1 | #### Strong uniform random number generation. .
strong_uniform_range/2 | #### Strong uniform random number generation in a range. .
uniform/1 | #### Quick uniform random number generation. Not meant for cryptographic purposes.
uniform/1 |
uniform_cache/1 | #### Quick uniform random number generation with cached data. Not meant for cryptographic purposes.
uniform_cache/1 |
uniform_cache/2 | #### Quick uniform random number generation with cached data. Not meant for cryptographic purposes.
uniform_cache/2 |

## Function Details

### seed/0

`seed() -> ok`

#### Seed random number generation.

### strong_float/0

`strong_float() -> float()`

#### Return an Erlang double-precision random number with the range [0.0 .. 1.0].

### strong_floatL/0

`strong_floatL() -> float()`

#### Return an Erlang double-precision random number with the range [0.0 .. 1.0).

Left portion of the 0.0 to 1.0 range.

### strong_floatM/0

`strong_floatM() -> float()`

#### Return an Erlang double-precision random number with the range (0.0 .. 1.0).

Middle portion of the 0.0 to 1.0 range.

### strong_floatR/0

`strong_floatR() -> float()`

#### Return an Erlang double-precision random number with the range (0.0 .. 1.0].

Right portion of the 0.0 to 1.0 range.

### strong_uniform/1

`strong_uniform(N::pos_integer()) -> pos_integer()`

#### Strong uniform random number generation.

### strong_uniform_range/2

`strong_uniform_range(Min::non_neg_integer(), Max::non_neg_integer()) -> non_neg_integer()`

#### Strong uniform random number generation in a range.

### uniform/1

`uniform(N::pos_integer()) -> pos_integer()`

#### Quick uniform random number generation.

Not meant for cryptographic purposes.

### uniform/1

`uniform(N) -> any()`

### uniform_cache/1

`uniform_cache(N::pos_integer()) -> pos_integer()`

#### Quick uniform random number generation with cached data.

Not meant for cryptographic purposes.

### uniform_cache/1

`uniform_cache(N) -> any()`

### uniform_cache/2

`uniform_cache(N::pos_integer(), State::quickrand_cache:state()) -> {pos_integer(), quickrand_cache:state()}`

#### Quick uniform random number generation with cached data.

Not meant for cryptographic purposes.

### uniform_cache/2

`uniform_cache(N, State) -> any()`

Generated by EDoc