用JAVA产生[0,1]均匀分布的随机数 要算法
2个回答
展开全部
double rand(double []r)
{
double base,u,p,v,temp1,temp2,temp3;
base=256.0;
u=17.0;
v=139.0;
temp1=u*(r[0])+v; //就算总数
temp2=(int)(temp1/base);//计算商
temp3=temp1-temp2*base;//余数
r[0]=temp3;//更新随机种子,为下一次使用
p=r[0]/base;//产生随机数
return p;
}
其中base为基数,一般去2的整数倍,常数,u、v可以随意取。数组r[]为只能去一个值的数组。如:double[]r={5.0}.
{
double base,u,p,v,temp1,temp2,temp3;
base=256.0;
u=17.0;
v=139.0;
temp1=u*(r[0])+v; //就算总数
temp2=(int)(temp1/base);//计算商
temp3=temp1-temp2*base;//余数
r[0]=temp3;//更新随机种子,为下一次使用
p=r[0]/base;//产生随机数
return p;
}
其中base为基数,一般去2的整数倍,常数,u、v可以随意取。数组r[]为只能去一个值的数组。如:double[]r={5.0}.
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-14
展开全部
Math.random()java Math中的random方法 即产生 0-1之间的随机数、。。。算法就是在预定范围内随机(其实还是按照某种特定的规则。。。)获取取一个数嘛。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询