Возможно, для этого существует очень логичное объяснение, но я просто не могу понять, почему семена 0
и 2,147,483,647
производят одну и ту же "случайную" последовательность, используя .NET Случайный класс (система).
Пример быстрого кода:
var random1 = new Random(0);
var random2 = new Random(1);
var random3 = new Random(int.MaxValue); //2,147,483,647
var buffer1 = new byte[8];
var buffer2 = new byte[8];
var buffer3 = new byte[8];
random1.NextBytes(buffer1);
random2.NextBytes(buffer2);
random3.NextBytes(buffer3);
for (int i = 0; i < 8; i++)
{
Console.WriteLine("{0}\t\t{1}\t\t{2}", buffer1[i], buffer2[i], buffer3[i]);
}
Вывод:
26 70 26
12 208 12
70 134 76
111 130 111
93 64 93
117 151 115
228 228 228
216 163 216
Как вы можете видеть, первая и третья последовательности одинаковы. Может кто-нибудь, пожалуйста, объясните мне это?
РЕДАКТИРОВАТЬ. По-видимому, как отмечали алро, эти последовательности не совпадают. Но они очень похожи.