srand((без знака)(время (NULL))); (rand())/(RAND_MAX/2) - 1 эквивалент C#

Что такое эквивалент C# следующего C++:

srand((unsigned)(time(NULL)));
weight=(double)(rand())/(RAND_MAX/2) - 1;

3 ответа

Конструктор без параметров для Random использует "зависящее от времени начальное значение по умолчанию", поэтому все, что вам нужно:

Random rnd = new Random();
return rnd.Next(-1, 1);
Random rnd = new Random((int)DateTime.Now.Ticks);
return rnd.Next(-1,1);

Для генерации случайных значений в.NET вы должны использовать класс Random. чтобы заполнить его значением времени, используйте: Random rand = new Random((int)DateTime.Now.Ticks);

Для получения дополнительной информации лучше проверить документы о классе Random в MSDN, например, какие методы доступны.

Другие вопросы по тегам