代码:
static void Main(string[] args)
{
Random ran = new Random();
Console.WriteLine("请输入总金额");
var total =Convert.ToDouble( Console.ReadLine());
// var total = 20.00;//总金额
Console.WriteLine("请输入个数");
//var num = 12;//参与人数
var num = Convert.ToInt32(Console.ReadLine());
var min = 0.01;//最少可以领到
for (var i = 1; i < num; i++)
{
var safe = (total - (num - i) * min) / (num - i);//随机安全上限
var money = ran.Next(Convert.ToInt32(min * 100), Convert.ToInt32(safe * 100))*0.01;//产生金额
total = total - money;//分配之后剩余总金额
Console.WriteLine("第{0}个红包:{1}元,余额:{2}元",i.ToString(),money.ToString("f2"),total.ToString("f2"));
}
Console.WriteLine("第{0}个红包:{1}元,余额:{2}元", num, total.ToString("f2"), 0);
Console.Read();
}
结果: