我大约一个星期前在学校开始编码并获得了一个20x20盒子的任务并随机填充字符B,V,M,SB,SL,_,F,P,K,L。我也必须编码角色在盒子里的机会。例如:B有8%的机会进入我的20x20盒子。我不确定如何让角色随机出现,并且根本不知道如何为这些角色编写一定的机会。
这是我到目前为止所做的:
int[,] objectArray = new int[20, 20];
// Horizontal numbers.
for (int i = 1; i <= 20; i++)
{
if (i == 1)
Console.Write(" " + i);
else if (i < 9)
Console.Write(" " + i);
else
Console.Write(" " + i);
}
Console.WriteLine("");
//Vertical numbers
for (int x = 0; x < 20; x++)
{
if (x < 9)
Console.Write((x + 1) + " ");
else
Console.Write((x + 1) + " ");
for (int y = 0; y < 20; y++)
{
Console.Write("_ ");
}
Console.WriteLine();
}
Console.Read();
我希望你能给我一些解决方法。
答案 0 :(得分:0)
C#有很多内置的随机数生成器代码可以帮助你 - 我建议阅读这个问题,关于如何在某些值之间生成随机数: Produce a random number in a range using C#
如果然后将所选的每个字符(B,V,M,SB,SL,_,F,P,K,L.I)放在一个数组中,那么您可以使用随机数来引用它们已经生成。
以下某些代码会从您的字符串列表中打印出20个随机值 - 因此您可以根据需要对其进行调整。
string[] chars = new string[] { "B", "V", "M", "SB", "SL", "_", "F", "P", "K", "L" };
Random rand = new Random();
for (int i = 0; i < 20; i++) {
Console.WriteLine(chars[rand.Next(0, chars.Length - 1)]);
}