我有以下的随机数创:随机数连续不重复相同的值
val = rnd.Next(1, 4)+1;
我已经看过该网站上类似的问题,我相信+1是为了防止获得相同数量的连续。
我想序列是随机的,但我不希望连续两次相同的值。例如:
1,1,2,2,3,4
会错,但1,2,1,2,3,4,3
会满足我的需求。
我尝试以下,但它并没有解决我的问题:
void numLogic()
{
System.Random rnd = new System.Random();
int val;
int oldval = val;
val = rnd.Next(1, 4)+1;
while (oldval == val)
{
val = rnd.Next(1, 4) + 1;
}
}
注意,通过统一的物体碰撞产生的每个数字后numLogic()
调用成功。问题不在游戏对象,这工作正常。我只是不希望连续两个数字相同。
+1所做的唯一的事情是让你的范围2-4而不是1-3。 –