Exemplo n.º 1
0
        public static int ComputeCriticalValue(this NumberInfo numberInfo, ThreeRegion threeRegion)
        {
            var countNumber = numberInfo.MaxValue - numberInfo.MinValue + 1;
            var part        = (int)Math.Floor((decimal)countNumber / 3);
            int criticalValue;

            switch (threeRegion)
            {
            case ThreeRegion.FirstRegion:
                criticalValue = part;
                break;

            case ThreeRegion.SecondRegion:
                criticalValue = part * 2;
                break;

            case ThreeRegion.ThirdRegion:
                criticalValue = numberInfo.MaxValue;
                break;

            default:
                throw new Exception("Not through this branch ");
            }
            return(criticalValue);
        }
Exemplo n.º 2
0
        public ThreeRegionDataInfo(ThreeRegion regionShape, int count, NumberInfo numberInfo)
        {
            _regionShape = regionShape;
            _count       = count;
            _numberInfo  = numberInfo;

            _keyNumbers = new ConcurrentDictionary <int, PeriodNumberInfo>();
        }
Exemplo n.º 3
0
 public ThreeRegionDataInfo GetThreeRegionData(ThreeRegion threeRegion)
 {
     if (ThreeRegionDatas.ContainsKey(threeRegion))
     {
         return(ThreeRegionDatas[threeRegion]);
     }
     return(null);
 }