作者tyc5116 (累人啊....)
看板C_and_CPP
标题[问题] 请问乱数的分布
时间Wed Apr 8 00:26:24 2009
如题,想请问一下,乱数的产生
假设说我要产生100个乱数,范围是1~100,以以前修matlab的经验
产生的乱数越多,其分布会越平均(所以我想c++也许也是这样)
今天假设我想让这100个乱数的分布是不平均的
例如说是常态分布,或者更近一步的
产生的乱数是70~90的机率是30%
像这样的条件大概的写法是怎样呢,谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.143.146.188
1F:推 QQ29:动不到rand()原码那就只好自己判断 让机率分布是你所要的吧 04/08 00:48
2F:→ QQ29:既然70~90机率要30趴 那就用个阵列纪录70~90之间的乱数有没有 04/08 00:49
3F:→ QQ29:30个吧(100个乱数的情况下) 04/08 00:49
4F:推 ledia:remap 得到的随机值吧 04/08 00:54
5F:→ ledia:比如 (0,30)->(70,90) (30,730/8)->(0,70) (730/8,100)-> 04/08 00:54
6F:→ ledia:(90,100) 04/08 00:54
7F:→ tsaiminghan:我觉得这应该有数学方法可以转换吧 04/08 00:55
8F:→ ledia:一楼的说法不太对, 70~90 机率是 30% 不见得有 30 个 04/08 00:56
9F:→ tsaiminghan:比如你弄个100点在0~100, 然後再加一定的点在70-90 04/08 00:57
10F:→ ledia:就我说的 re-map 就好啦 04/08 00:57
11F:→ tsaiminghan:凑成你要的比率之类的 04/08 00:57
12F:推 tsaiminghan:这问题去数学版问,应该会比较多解答 04/08 01:00
13F:推 QQ29:我的方法比较死XD 不然应该很困难吧 04/08 01:01
14F:推 elfkiller:Z 3 7 16 04/08 08:16
15F:推 VictorTom:楼上好强大....(推XD) 04/08 09:24
16F:推 su35:请上网参考 高斯常态分布 04/08 21:26
17F:→ tyc5116:嗯...我会再上网查看看 04/08 22:39