Example #1
0
        private double Computation(double value)
        {
            SetThrow().Invoke();

            int result = -1;
            int low    = currentThrow.GetLowerBound();
            int up     = currentThrow.GetUpperBound();
            Dictionary <int, double> massFunction = currentThrow.GetMassFunction();
            double accum = 0;

            for (int i = low; i <= up; i++)
            {
                accum += massFunction[i];
                if (value < accum)
                {
                    result    = i;
                    firstDone = !firstDone;
                    break;
                }
            }
            lastResult = result;
            return(result);
        }