我一直在学习c#,我想开始一个美式足球模拟器的实验性控制台应用项目。这个项目有机会是至关重要的。
示例:踢球者有超过45码射门得分的可能性为20%。
我在这里环顾四周,注意到人们使用了randoms,但这真的是最有效的方法吗?
Random chance = new Random(1, 100);
If (Yards > 45)
{
If (chance <= 20)
{
// Field goal success
}
else
{
// Field goal fail
}
}
这样做最好的方法是什么?
答案 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
}
}