math/rand

Package rand implements pseudo-random number generators unsuitable for security-sensitive work.

Index

Functions

func ExpFloat64

1func ExpFloat64() float64

ExpFloat64 returns an exponentially distributed float64 in the range (0, +math.MaxFloat64] with an exponential distribution whose rate parameter (lambda) is 1 and whose mean is 1/lambda (1) from the default Source. To produce a distribution with a different rate parameter, callers can adjust the output using:

sample = ExpFloat64() / desiredRateParameter

func Float32

1func Float32() float32

Float32 returns, as a float32, a pseudo-random number in the half-open interval [0.0,1.0) from the default Source.

func Float64

1func Float64() float64

Float64 returns, as a float64, a pseudo-random number in the half-open interval [0.0,1.0) from the default Source.

func Int

1func Int() int

Int returns a non-negative pseudo-random int from the default Source.

func Int31

1func Int31() int32

Int31 returns a non-negative pseudo-random 31-bit integer as an int32 from the default Source.

func Int31n

1func Int31n(n int32) int32

Int31n returns, as an int32, a non-negative pseudo-random number in the half-open interval [0,n) from the default Source. It panics if n <= 0.

func Int63

1func Int63() int64

Int63 returns a non-negative pseudo-random 63-bit integer as an int64 from the default Source.

func Int63n

1func Int63n(n int64) int64

Int63n returns, as an int64, a non-negative pseudo-random number in the half-open interval [0,n) from the default Source. It panics if n <= 0.

func Intn

1func Intn(n int) int

Intn returns, as an int, a non-negative pseudo-random number in the half-open interval [0,n) from the default Source. It panics if n <= 0.

1fmt.Println(rand.Intn(100))
2fmt.Println(rand.Intn(100))
3fmt.Println(rand.Intn(100))

func NormFloat64

1func NormFloat64() float64

NormFloat64 returns a normally distributed float64 in the range [-math.MaxFloat64, +math.MaxFloat64] with standard normal distribution (mean = 0, stddev = 1) from the default Source. To produce a different normal distribution, callers can adjust the output using:

sample = NormFloat64() * desiredStdDev + desiredMean

func Perm

1func Perm(n int) []int

Perm returns, as a slice of n ints, a pseudo-random permutation of the integers in the half-open interval [0,n) from the default Source.

1for _, value := range rand.Perm(3) {
2	fmt.Println(value)
3}

Output

1
2
0

func Uint32

1func Uint32() uint32

Uint32 returns a pseudo-random 32-bit value as a uint32 from the default Source.


© Matthias Hochgatterer – MastodonGithubRésumé