我的方法是将数字1到9按随机顺序排列。每个号码只出现一次。该方法应该返回一个整数表。
这是我的代码,面对墙,我用这段代码用尽了想法。 我知道这段代码是100%错误的。
class Program
{
static void Main(string[] args)
{
int luvut = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
Console.WriteLine(luvut);
Console.ReadKey();
}
private static int Kuuluuko(int luvut)
{
for (int i = 0; i < luvut.Length; i++)
{
return;
}
}
}
}
答案 0 :(得分:1)
var randomNumbers = Enumerable.Range(1,9).OrderBy(n => Guid.NewGuid()).ToList();
答案 1 :(得分:0)
这样的事情怎么样?制作一个列表,并在使用它们时从该列表中删除这些数字。就像从碗里画出数字或类似的东西:)
var numbers = new List<int>(new[]{ 1, 2, 3, 4, 5, 6, 7, 8, 9});
var randomnumbers = new List<int>();
var rnd = new Random();
while( numbers.Count > 0 ){
var index = rnd.Next(0, numbers.Count);
randomnumbers.Add(numbers[index]);
numbers.RemoveAt(index);
}
//randomnumbers now contain the random sequence
答案 2 :(得分:0)
您的代码有几个错误,甚至没有编译。以下代码正在运行并为您提供所期望的内容:
class Program
{
static void Main(string[] args)
{
int[] luvut = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
Console.WriteLine(Kuuluuko(luvut));
Console.ReadKey();
}
private static int Kuuluuko(int[] luvut)
{
var random = new Random();
return luvut[random.Next(0, luvut.Length)];
}
}