【问题标题】:Calculate true/false for probability [duplicate]计算概率的真/假[重复]
【发布时间】:2018-06-03 00:38:36
【问题描述】:

我有一个命中率 49% 的火箭。计算该火箭命中(真/假)的公式是什么? 我有许多具有不同概率的对象。

【问题讨论】:

    标签: c# math


    【解决方案1】:
    Random rand = new Random(); 
    
    if(rand.Next(1, 101) <= rocketHitRatio)
    //hit
    else
    //no hit
    

    【讨论】:

      【解决方案2】:

      Random.NextDouble() 返回一个介于 0.0 或更大且小于 1.0 之间的数字。您只需将该结果与以双倍表示的概率百分比进行比较,如果它低于或等于您命中的命中概率值。

      bool IsHit(Random rnd, double hitChance)
      {
          return rnd.NextDouble() <= hitChance;
      }
      
      double rocketChance = 0.49;
      bool hit = IsHit(_random, rocketChance);
      

      【讨论】:

      • 我修正了我的数学。您只需将每个数字代入公式 0.01 到 1.00
      • 公式为percent hit chance &lt;= the value you want to test normalized to the 0 to 1 range.
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-21
      • 1970-01-01
      相关资源
      最近更新 更多