Math.round(Math.random()*9+1)的问题,怎么现在才发现...
用Math.round(Math.random()*9+1) 模拟一亿次.
从左到右依次对应1到10的出现次数的概率分布如下:
5550975,11110994,11109952,11107453,11113482,11106273,11112448,11113637,11113936,5560850
瞧瞧两头.我以前一直都是用的这句代码来产生随机数=.=
后面我又用 Math.ceil(Math.random() * 10)
和 Math.floor(Math.random() * 10+1) 分别模拟了一亿次,概率分布都很正常~
Math.ceil(Math.random() * 10)
9999674,10002663,9992580,9997330,10002808,10003604,9998316,9999602,10002274,10001149
Math.floor(Math.random() * 10+1)
9998578,10000592,9995001,10003015,9999125,10001943,9999776,9999089,10002336,10000545
其实不用模拟一亿次,模拟1000次就可以看出来了.
人气:488 ℃ 时间:2020-06-15 00:32:24
解答
round()方法通俗的说就是四舍五入,也就是生成的结果在1-1.4.之间就等于1,
1.5-2.4.之间等于2
.
9.5-10之间等于10
所以头尾出现的分布区间只有其他数字的一半,你现在得到的结果很正常
推荐
- math.round()问题
- 30、在ActionScript中,以下关于语句Math.round(random()*100)的说法正确的是(d).(选择一项) a) 获
- Math.floor(Math.random() * 7 +
- Once men have tasted caviar,how they settle for catfish?什么意思啊
- __Kate __the doctor the day before yesterday?a.have,seen b.has,seen c.did,see d.does,see
- 与流水,战争,于某种植物有关,想念亲人,描写山水,歌颂情谊,反应科学哲理,表现爱国主义的诗句
- 有一包FeSO4和Fe2(SO4)3的固体混合物,已测得铁元素质量分数为31%,则混合物中硫元素的质量分数为_.
- 某幼儿园有玩具若干件,分给小朋友,如果每人分3件,那么还余59件,如果每人分5件,那么最后一个小朋友还少几件.试求这个幼儿园有多少件玩具?有多少小朋友?
猜你喜欢