Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用math.random()生成可被90整除的整数_Random_Lua - Fatal编程技术网

使用math.random()生成可被90整除的整数

使用math.random()生成可被90整除的整数,random,lua,Random,Lua,是否可以使math.random()只返回可被90整除的数字?您可以生成任意随机整数并将其乘以90 我从未使用过Lua,但math.random(intx,inty)将生成一个介于x和y之间的随机整数。乘以90。结果将与生成的任何其他数字一样随机。您可以生成任意随机整数并将其乘以90 function random_90(lower, upper) return math.random(math.ceil(lower/90), math.floor(upper/90))*90 end

是否可以使
math.random()
只返回可被90整除的数字?

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


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

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

function random_90(lower, upper)
    return math.random(math.ceil(lower/90), math.floor(upper/90))*90
end

print(random_90(100, 1000))
我从未使用过Lua,但math.random(intx,inty)将生成一个介于x和y之间的随机整数。乘以90。结果将与生成的任何其他数字一样随机

function random_90(lower, upper)
    return math.random(math.ceil(lower/90), math.floor(upper/90))*90
end

print(random_90(100, 1000))
记得在使用
math.randomseed()
之前调用
math.randomseed()
。最好在实际使用之前多次调用
math.random()
,因为在某些实现中,前几个数字看起来可能没有那么随机

math.randomseed(os.time())
math.random(); math.random(); math.random();
记得在使用
math.randomseed()
之前调用
math.randomseed()
。最好在实际使用之前多次调用
math.random()
,因为在某些实现中,前几个数字看起来可能没有那么随机

math.randomseed(os.time())
math.random(); math.random(); math.random();

我想您需要
math.random(math.ceil(下/90)、math.floor(上/90))*90
,因为Lua中没有整数除法。@lhf现已修复。我考虑过这一点,所以在发布之前,我在我的机器(Lua5.1)上测试了代码。它(旧代码)起作用。我刚刚检查了源代码,看起来像是当
math.random
获取一个或两个参数时,在Lua5.1中它使用
int
,但在Lua5.2中,它使用
Lua\u Number
。这是一个我不知道的细微差别。我认为您需要
math.random(math.ceil(下/90),math.floor(上/90))*90
,因为Lua中没有整数除法。@lhf现已修复。我考虑过这一点,所以在发布之前,我在我的机器(Lua5.1)上测试了代码。它(旧代码)起作用。我刚刚检查了源代码,看起来像是当
math.random
获取一个或两个参数时,在Lua5.1中它使用
int
,但在Lua5.2中,它使用
Lua\u Number
。这是一个我不知道的细微差别。