C_and_CPP 板


LINE

开发平台(Platform): (Ex: VC++, GCC, Linux, ...) Linux 额外使用到的函数库(Library Used): (Ex: OpenGL, ...) No 问题(Question): 想要制造出一串乱数,希望这些乱数的差异要很大。 目前的乱数是取 rand()%10000 结果产生出的乱数大部分都是四位数 希望可以产生出 0,1234, 99, 567, 10080...等等差异很大的 喂入的资料(Input): 跑程式的时候用argv 读入要产生多少乱数 预期的正确结果(Expected Output): 就是希望可以产生更乱的数字这样 错误结果(Wrong Output):程式码(Code):(请善用置底文网页, 记得排版) 就是一般的乱数程式码,例如 srand(time(null)); int n = rand()%10000; 这样 补充说明(Supplement): 是要跑simplescalar,分析cache效能用的 (分析在某个排序演算法中,cache设定值的数据) 因为目前产生出的数字都是四位数 跑出来的数据好像不论在哪种associativity的设定都相差不大 然後就自己去手动产生了一串差异较大的数字,发现这样数据会比较有趣(?) 想说是不是乱数产生的部分要再乱一点... --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 66.215.98.249
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1462745608.A.AD7.html
1F:推 flere: 多写几个function, 分别产生1位数, 2位数, ...的 05/09 06:36
2F:→ flere: 再写一个function, 来决定每次要用哪个function产生数字(?) 05/09 06:37
3F:→ flere: 多写几个function->可以用一个function, 参数传几位数这样 05/09 06:38
4F:→ Schottky: ..... 请问你有学过机率吗? 05/09 06:39
5F:推 WBTs: 会不会是你取乱数时间太近,看你用time()来取,把取乱数时间 05/09 08:05
6F:→ WBTs: 拉长试试 05/09 08:05
好的谢谢各位 我等一下来试试看~ (我学过机率 不过学得满糟糕的XD 一直有打算再自修一次 >"<...) ※ 编辑: uioty (66.215.98.249), 05/09/2016 09:23:40
7F:→ james732: 你这样有条件的乱数还算是乱数吗?XD 05/09 09:26
8F:推 BSpowerx: 那样就不叫乱数了阿....... 05/09 09:37
9F:→ BSpowerx: 0~10000有90%的数字都是四位数,当然都看到四位数阿.. 05/09 09:38
10F:推 Ebergies: 哈哈哈 XD 05/09 09:49
XDDD 对吼
11F:→ WBTs: 刚刚忘了考虑机率,那你应该要把1,2,3,4位数的机率拉平,像 05/09 10:18
12F:→ WBTs: 是各乱数取20个再乱数放到阵列,再乱数取阵列的吧 05/09 10:18
13F:→ MOONRAKER: 阿rand()产生n和p 回传n * pow(10, p)不就结了 05/09 10:40
14F:→ MOONRAKER: p 范围从正取到负就如你所想 05/09 10:41
15F:推 flydragon198: 真正的乱数,差异应该是随机的,每次都差很多反而不 05/09 10:41
16F:→ flydragon198: 太像真实的乱数 05/09 10:41
17F:→ Caesar08: 你只要不要采取一楼的做法就好 05/09 11:01
18F:→ Caesar08: 没事,我看错了。不过那种方式就变成有条件的乱数了 05/09 11:25
19F:→ Caesar08: 另外,关於乱数的产生,请绝对不要自己写,麻烦用已知的 05/09 11:26
20F:→ Caesar08: generator,如rand或srand(不太好),或<random>里的 05/09 11:28
好的 那我大概知道怎麽做了 谢谢各位 >__< ※ 编辑: uioty (66.215.98.249), 05/09/2016 13:03:18 ※ 编辑: uioty (66.215.98.249), 05/09/2016 13:06:24
21F:推 noodleT: 要找到如这种曲线的方程式 http://imgur.com/ld6TKqz 05/10 20:26
22F:→ noodleT: 透过均匀分布乱数 x 得到对应的 y 05/10 20:26
23F:→ noodleT: 方程式的两端要保持平滑、中间要陡 05/10 20:27
24F:→ noodleT: 这参考看看 http://ideone.com/vaJ3bp 05/10 20:29
25F:→ yoco: ..................保重 T_T 05/11 00:43
26F:推 Hazukashiine: 如果想产生乱数的各种位数分布的机率差不多的话: 05/11 04:21
27F:→ Hazukashiine: int rand10(int exp10) { 05/11 04:22
28F:→ Hazukashiine: int min=(int)pow(10, exp10-1), num=min*9; 05/11 04:23
29F:→ Hazukashiine: return (rand()%exp10) ? (rand10(--exp10)) 05/11 04:24
30F:→ Hazukashiine: : (rand()%num+min); } 05/11 04:24
31F:推 steve1012: 为何不用Std 的distribution 还要继续用旧的rand 05/11 07:08
32F:推 noodleT: distribution 是 Cpp11,我还在用老版本… 05/11 12:09
33F:→ Caesar08: 因为网路上的范例都是rand。因为教授不会用C++11 05/11 12:31







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Tech_Job站内搜寻

TOP