C# - 如何制作“成功机会”方法

时间:2015-08-29 11:46:49

标签: c#

我一直在学习c#,我想开始一个美式足球模拟器的实验性控制台应用项目。这个项目有机会是至关重要的。

  

示例:踢球者有超过45码射门得分的可能性为20%。

我在这里环顾四周,注意到人们使用了randoms,但这真的是最有效的方法吗?

Random chance = new Random(1, 100);
If (Yards > 45)
{
    If (chance <= 20)
    {
        // Field goal success
    }
    else
    {
        // Field goal fail
    }
}

这样做最好的方法是什么?

1 个答案:

答案 0 :(得分:1)

这非常简单。就这样做:

private Random _rnd = new Random();
public bool RandomSuccess(double probability)
{
    return _rnd.NextDouble() < probability;
}

然后像这样使用它:

if (Yards > 45)
{
    if (RandomSuccess(0.2))
    {
        // Field goal success
    }
    else
    {
        // Field goal fail
    }
}