相关疑难解决方法(0)

创建一个真正的随机

可能重复:
为什么我的随机数生成器在C#中不是随机的?
如何用C#生成真正的(非伪)随机数?

我创造了一个骰子游戏,骰子基于百分位数,1-100.

public static void Roll()
{
    Random rand = new Random((int)DateTime.Now.Ticks);
    return rand.Next(1, 100);
}
Run Code Online (Sandbox Code Playgroud)

但我不认为这是基于当前时间的真实随机.

如果我做

for (int i = 0; i < 5; i++)
{
   Console.WriteLine("#" + i + " " + Roll());
}
Run Code Online (Sandbox Code Playgroud)

它们都是相同的值,因为它DateTime.Now.Ticks没有改变,它播种的数字相同.

我想我可以生成一个新的随机种子,如果由于当前时间种子是相同的,但它不像一个诚实的"重新滚动"

我应该怎么做才能尝试复制接近真实/诚实的骰子卷?我应该使用RNGCryptoServiceProvider该类来生成卷吗?

c# random

15
推荐指数
2
解决办法
2万
查看次数

非常奇怪 - 当我使用断点时,代码(使用Random)的工作方式不同

我正在研究一个神经网络项目,我有两个这样的类:

public class Net
{
    // Net object is made of neurons
    public List<Neuron> Neurons = new List<Neuron>();

    // neurons are created in Net class constructor
    public Net(int neuronCount, int neuronInputs)
    {
        for (int n = 0; n < neuronCount; n++)
        {
            Neurons.Add(new Neuron(n, neuronInputs));
        }
    }
}

public class Neuron
{
    public int index; // neuron has index

    public List<double> weights = new List<double>(); // and list of weights

    // Neuron constructor is supposed to add random weights to …
Run Code Online (Sandbox Code Playgroud)

c# debugging

4
推荐指数
2
解决办法
460
查看次数

标签 统计

c# ×2

debugging ×1

random ×1