Beispiel #1
0
        void OnPocket(ref CardSet hand, CalculateAverageHsParam param)
        {
            uint handValue = CardSetEvaluator.Evaluate(ref hand);
            int  ordinal   = HandValueToOrdinal.GetOrdinal7(handValue);

            param.Sum += ordinal;
            param.Count++;
        }
Beispiel #2
0
        double CalculateAverageHVO(int[] board)
        {
            CardSet boardCs = StdDeck.Descriptor.GetCardSet(board);
            CalculateAverageHsParam param = new CalculateAverageHsParam();
            int toDealCount = 7 - board.Length;

            CardEnum.Combin(StdDeck.Descriptor, toDealCount, boardCs, CardSet.Empty, OnPocket, param);
            Assert.AreEqual(EnumAlgos.CountCombin(52 - board.Length, toDealCount), param.Count);
            return(param.Sum / param.Count);
        }