# love.math.random

 Available since LÖVE 0.9.0 This function is not supported in earlier versions.

Generates a pseudo-random number in a platform independent manner. This function is seeded at startup, so you generally don't need to seed it yourself. Neither this function, RandomGenerator, nor Lua math.random generates truly random number, thus it's unsuitable for cryptographic usage!

## Function

Get uniformly distributed pseudo-random real number between 0 inclusive to 1 exclusive.

### Synopsis

```number = love.math.random( )
```

None.

### Returns

`number number`
The pseudo-random number.

## Function

Get a uniformly distributed pseudo-random integer between 1 inclusive to `max` inclusive.

### Synopsis

```number = love.math.random( max )
```

### Arguments

`number max`
The maximum possible value it should return.

### Returns

`number number`
The pseudo-random integer number.

## Function

Get uniformly distributed pseudo-random integer between `min` inclusive to `max` inclusive.

### Synopsis

```number = love.math.random( min, max )
```

### Arguments

`number min`
The minimum possible value it should return.
`number max`
The maximum possible value it should return.

### Returns

`number number`
The pseudo-random integer number.

## Examples

Generates a number between 1 and 100 (both inclusive).

```function love.load()
randomNumber = love.math.random(1, 100)
end
```

Generate a random permutation of list:

```function shuffle (list)
-- backward iteration from last to second element:
for i = #list, 2, -1 do
-- choose one of elements:
local j = love.math.random(i) -- between 1 to i (both inclusive)
-- replace both elements each other:
list[i], list[j] = list[j], list[i]
end
end
```