微信红包随机算法的实现

 class MoneyPage
    {
        public int RemainSize;    //剩余的红包
        public double RemainMoney;//剩余的金额
        public double GetRandomMoney()
        {
            double money;
            if (RemainSize==1)
            {
                RemainSize--;
               return Math.Round(RemainMoney*100)/100;
            }
            Random random = new Random();
            double max = RemainMoney / RemainSize * 2;
            money = random.NextDouble()*max;
            money = money <= 0.01 ? 0.01 : money;
            money = Math.Floor(money * 100) / 100;
            RemainMoney = RemainMoney - money;
            RemainSize--;
            return money;
        }
    }


你可能感兴趣的:(微信红包)