public void GcdLcmTest()
        {
            long a = 3457832408;
            long b = 56789309233;

            Assert.IsTrue(AdvancedIntegerMath.GCF(a, b) * AdvancedIntegerMath.LCM(a, b) == a * b);
        }
Example #2
0
 public override double ProbabilityMass(int k)
 {
     if ((k < Minimum) || (k > Maximum))
     {
         return(0.0);
     }
     else
     {
         int c  = k * ((int)AdvancedIntegerMath.GCF(n, m));
         int c1 = (k - 1) * ((int)AdvancedIntegerMath.GCF(n, m));
         return((LatticePathSum(c) - LatticePathSum(c1)) / AdvancedIntegerMath.BinomialCoefficient(n + m, n));
     }
 }
Example #3
0
 public override double LeftInclusiveProbability(int k)
 {
     if (k < Minimum)
     {
         return(0.0);
     }
     else if (k >= Maximum)
     {
         return(1.0);
     }
     else
     {
         return(LatticePathSum(k * ((int)AdvancedIntegerMath.GCF(n, m))) / AdvancedIntegerMath.BinomialCoefficient(n + m, n));
     }
 }