我想做一个特别的随机数。
private Randomizer getNumberRnd;
getNumberRnd = new Randomizer(1, 10, true);
firstNumber = getNumberRnd.getRandom();
我想得到 6 个接近的随机数。
例如:7,6,5,8,9,5
正如我看到的从 1 到 10,那么如何让这些数字随机且接近呢?
最佳答案
假设您希望您的数字不超过 +- 2 并且接近 12。您可以简单地做
int randomOffset = Random.Range(-2, 3); // For ints, the upper value is exclusive
int value = 12 + randomOffset;
这会给你一个范围内的值
10, 11, 12, 13, 14
现在,如果您不希望它在 12 左右,而是在一个随机值附近并将它们保持在 1 到 10 之间
int randomPivot = Random.Range(3, 9);
int randomOffset = Random.Range(-2, 3); // For ints, the upper value is exclusive
int value = randomPivot + randomOffset;
现在,您需要围绕枢轴的 6 个值,所以我们这样做
int[] randomValues = new int[6];
int randomPivot = Random.Range(3, 9);
for(int i = 0; i<6; ++i)
{
int randomOffset = Random.Range(-2, 3);
randomValues[i] = randomPivot + randomOffset;
}
现在 random values
包含 6 个随机值,但彼此接近并且都在 1 到 10 之间
关于c# - 随机范围订单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49770047/