使用math.random()生成一个能够被90整除的整数。

有可能让 math.random() 只返回能被 90 整除的数吗?

点赞
用户2848097
用户2848097

你可以生成任意随机整数并将其乘以90。

我从未使用过Lua,但是 math.random(int x, int y) 将生成一个在x和y之间的随机整数。将其乘以90。结果将与生成的任何其他数字一样随机。

2014-02-06 04:38:56
用户1009479
用户1009479
```lua
function random_90(lower, upper)
    return math.random(math.ceil(lower/90), math.floor(upper/90))*90
end

print(random_90(100, 1000))

在使用 `math.random()` 之前,记住要先调用 `math.randomseed()` 一次。在某些实现中,前几个数字可能不会看起来特别随机,所以最好在真正使用之前多次调用 `math.random()`。

```lua
math.randomseed(os.time())
math.random(); math.random(); math.random();
2014-02-06 04:43:11