微信猜拳算法
发布时间: 2024-10-26 19:23:35
Ⅰ 微信红包的随机算法是怎样实现的
下面是一个比较拙的算法,真实的红包随机数要稍微复杂些:
classProgram
{
staticvoidMain(string[]args)
{
double[]hb=WeiXin.Hongbao(5,1);
for(inti=0;i<5;i++)
{
Console.WriteLine(hb[i]);
}
}
}
///<summary>
///微信类
///</summary>
publicclassWeiXin
{
///<summary>
///红包随机分配
///</summary>
///<paramname="personNumber">红包个数</param>
///<paramname="money">金额</param>
///<returns></returns>
publicstaticdouble[]Hongbao(intpersonNumber,doublemoney)
{
Randomrand=newRandom();
doublefen=money;
double[]hb=newdouble[personNumber];
doublerm=0D;
//预分配
for(inti=0;i<personNumber;i++)hb[i]=0.01;
fen-=(personNumber*0.01);
if(fen>0.01)
{
//随机分配
while(fen>0)
{
rm=GetRandomNumber(0.01,fen);
hb[rand.Next(0,personNumber)]+=rm;
fen-=rm;
}
}
returnhb;
}
///<summary>
///返回介于minimum和maximum之间的随机数
///</summary>
///<paramname="minimum">最小值</param>
///<paramname="maximum">最大值</param>
///<returns></returns>
(doubleminimum,doublemaximum)
{
Randomrandom=newRandom();
returnMath.Round(random.NextDouble()*(maximum-minimum)+minimum,2);
}
}
Ⅱ 微信欢乐斗地主胜局积分怎么算法的
要基础豆子,就是开始1盘就要付220或300豆子
基础倍数,没有炸弹就30倍,若有抢庄1次就60,2次就120
炸弹倍数*2,火箭*2
地主3张里有特殊牌(如有1个王再*3同花*3……)
最后是基础倍数*炸弹/火箭倍数*是否有特殊牌倍数,农民赢了加一半得分,地主全部,输了反之,只要玩1局游戏,不论胜负,都要付基础豆子(220/300),豆子没满1000不能开始游戏
望采纳,谢谢
热点内容