请教下,怎么用js生成N个随机数,并且这N个随机数的和为1。。。。
Math.random()然后累加下,累加超过1剩下的补0什么的。随机够n-1还是不足1,最后一个直接1-之前的和
可以很明确的告诉做不到,也许你该换个方式解决问题,描述一下要解决什么问题要用到这个
这 个不就是 循环 累减 然后重置随机范围吗..
java可以这样实现,js仿照这个写就可以了:
int count = 0;
Random r = new Random();
while(10 != count){
int ranom = r.nextInt(10);
if(count + ranom <= 10){
count = count + ranom;
System.out.println("random =" + (double)ranom / 10);
}
}
长度为1的线段上随机取N-1个点,将线段分为N份,计算每份长度
Math.random(),方式可以,具体的代码可以百度参考,比较简单