问题描述
我在使形状沿随机方向移动时遇到了麻烦,使用我目前使它们都沿相同方向移动然后随机更改为另一个方向的代码。
这是代码
for(int i = 0; i < 50; i++)
{
int randomMoveX = rand() % 2 + (-1);
int randomMoveY = rand() % 2 + (-1);
circleObjectArray[i].move(randomMoveX,randomMoveY);
while(randomMoveX == 0)
{
randomMoveX = rand() % 2 + (-1);
}
while(randomMoveY == 0)
{
randomMoveY = rand() % 2 + (-1);
}
cout << "randomMoveX: " << randomMoveX << endl;
cout << "randomMoveY: " << randomMoveY << endl;
}
我如何更改代码以能够分别在随机方向上移动它们?
谢谢您的时间:D
解决方法
运行应用程序时,种子的种子随机设置为srand(1)
。
要在兰特中使用其他值,您需要更改random的种子。
然后使用函数srand并将其保存在unsigned int
中,以对不同形状使用不同的rand。