-7

重複の可能性:
c# で 0 から 9 までの一意の乱数で配列を埋める

"page[100]" のような配列があり、C# で 0 から 9 までの乱数を入力したい...どうすればこれを行うことができますか? 私が使用した:

IEnumerable<int> UniqueRandom(int minInclusive, int maxInclusive)
{
    List<int> candidates = new List<int>();
    for (int i = minInclusive; i <= maxInclusive; i++)
    {
        candidates.Add(i);
    }
    Random rnd = new Random();
    while (candidates.Count > 1)
    {
        int index = rnd.Next(candidates.Count);
        yield return candidates[index];
        candidates.RemoveAt(index);
    }
}

こちらです :

int[] page = UniqueRandom(0,9).Take(array size).ToArray();

しかし、それは私に9つの一意の乱数を与えましたが、もっと必要です. すべて同じではない乱数を含む配列を取得するにはどうすればよいですか?

4

3 に答える 3

3

どうですか

int[] page = new int[100];
Random rnd = new Random();
for (int i = 0; i < page.Length; ++i)
  page[i] = rnd.Next(10);
于 2012-05-22T06:36:11.810 に答える
1
Random r = new Random(); //add some seed
int[] randNums = new int[100]; //100 is just an example
for (int i = 0; i < randNums.Length; i++)
    randNums[i] = r.Next(10);
于 2012-05-22T06:35:21.690 に答える
0

100 個の数字の配列があり、10 個の異なる数字のプールから描画します。重複がないことをどのように期待しますか?

物事を過度に複雑にしないでください。書く必要があることだけを書いてください。すなわち:

  1. 配列を作成する
  2. そのサイズをループします
  3. [0, 9] の間の乱数を配列に入れます。
于 2012-05-22T06:37:11.063 に答える