如何绘制有例外的数字
How to draw numbers with exceptions
如何画有异常的数字?例如我想画1到4之间的数字,但我不想画数字3.
我的随机移动功能需要它,我想防止某些移动。
void monsterMove()
{
Random rnd = new Random();
int movmentNumber = rnd.Next(1, 4);
switch (movmentNumber)
{
case 1:
Console.Clear();
monster1PositionY = monster1.moveRight(monster1PositionY);
map.movefillRightMonster(monster1PositionX, monster1PositionY);
map.printBoard();
break;
case 2:
Console.Clear();
monster1PositionY = monster1.moveLeft(monster1PositionY);
map.movefillLeftMonster(monster1PositionX, monster1PositionY);
map.printBoard();
break;
case 3:
Console.Clear();
monster1PositionX = monster1.moveDown(monster1PositionX);
map.movefillDownMonster(monster1PositionX, monster1PositionY);
map.printBoard();
break;
case 4:
Console.Clear();
monster1PositionX = monster1.moveUp(monster1PositionX);
map.movefillUpMonster(monster1PositionX, monster1PositionY);
map.printBoard();
break;
}
}
我在 Whosebug 和其他地方寻找解决方案,但找不到答案。
您也许可以创建一个可能的抽奖数组和select一个对应于索引的随机数。
Random r = new Random();
int[] draws = new int[] {1, 2, 4};
int number = draws[r.Next(draws.Length)];
编辑:糟糕,原来 r.Next(int max)
是独占的,所以应该是 draws.Length
而不是 draws.Length-1
如何画有异常的数字?例如我想画1到4之间的数字,但我不想画数字3.
我的随机移动功能需要它,我想防止某些移动。
void monsterMove()
{
Random rnd = new Random();
int movmentNumber = rnd.Next(1, 4);
switch (movmentNumber)
{
case 1:
Console.Clear();
monster1PositionY = monster1.moveRight(monster1PositionY);
map.movefillRightMonster(monster1PositionX, monster1PositionY);
map.printBoard();
break;
case 2:
Console.Clear();
monster1PositionY = monster1.moveLeft(monster1PositionY);
map.movefillLeftMonster(monster1PositionX, monster1PositionY);
map.printBoard();
break;
case 3:
Console.Clear();
monster1PositionX = monster1.moveDown(monster1PositionX);
map.movefillDownMonster(monster1PositionX, monster1PositionY);
map.printBoard();
break;
case 4:
Console.Clear();
monster1PositionX = monster1.moveUp(monster1PositionX);
map.movefillUpMonster(monster1PositionX, monster1PositionY);
map.printBoard();
break;
}
}
我在 Whosebug 和其他地方寻找解决方案,但找不到答案。
您也许可以创建一个可能的抽奖数组和select一个对应于索引的随机数。
Random r = new Random();
int[] draws = new int[] {1, 2, 4};
int number = draws[r.Next(draws.Length)];
编辑:糟糕,原来 r.Next(int max)
是独占的,所以应该是 draws.Length
而不是 draws.Length-1