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/m.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燈, 水草

請輸入看板名稱,例如:iOS站內搜尋

TOP