我想制作随机数字,但如果它们太接近,我想让它重新滚动,或者让它远离另一个数字,或者尝试让它更分散一点。
我想我不确定我到底想要什么:/
提前致谢
编辑:所以我制作随机数字的原因是为了在屏幕两侧生成单位的位置,所以我希望单位之间不要太靠近,以使其看起来更好。
我想制作随机数字,但如果它们太接近,我想让它重新滚动,或者让它远离另一个数字,或者尝试让它更分散一点。
我想我不确定我到底想要什么:/
提前致谢
编辑:所以我制作随机数字的原因是为了在屏幕两侧生成单位的位置,所以我希望单位之间不要太靠近,以使其看起来更好。
我想制作随机数字,但如果它们太接近,我想让它重新滚动,或者让它远离另一个数字,或者尝试让它更分散一点。
随机数生成器有时会产生彼此接近的数字。
如果您不希望它们如此靠近,也许您需要的是固定数字,每个数字都有一个小的随机扰动。
假设您选择数字 10、20、30、40 和 50。然后,您运行一个随机数生成器,它会为您提供介于 -3 和 +3 之间的数字。您将这个随机数依次添加到每个中。这会产生不统一的数字,但它们彼此之间并不太接近。
或者...预先计算所有有效位置,将它们放在某个数组中并使用 rnd 函数获取数组索引 - 将使用哪些数组元素。这应该是更快的解决方案(如果你有大量的单位)......
如果重新滚动就足够了,您可以只保存以前的值,然后在下一次迭代中,如果两个数字之间的差异太小,请再次调用 Math.rand()。也许你的样本空间太小了?