[討論] 關於亂數

看板C_and_CPP作者 (幻想的夢境)時間13年前 (2011/04/09 17:08), 編輯推噓5(509)
留言14則, 8人參與, 最新討論串1/1
日前跟學長在聊天 有一個學長問到 現在要取得亂數 每次打開程式取的量不同 可能第一次取3個,第2次取8個...... 不用srand() 要怎麼做出跟srand相仿的功能? 這問題我想好久 最後學長跟我說了答案 才驚覺 原來是如此簡單= = 現在讓板上的高手也想想吧~~呵呵 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.192.76.53

04/09 17:21, , 1F
getpid() ?
04/09 17:21, 1F

04/09 17:53, , 2F
要看你的個數在那個範圍。有時抓時間即可
04/09 17:53, 2F

04/09 18:29, , 3F
就預設取0-32767阿
04/09 18:29, 3F

04/09 18:33, , 4F
/dev/random
04/09 18:33, 4F

04/09 18:41, , 5F
做一個系統腳本然後執行
04/09 18:41, 5F

04/09 18:45, , 6F
樓上的意思是建表吧?
04/09 18:45, 6F

04/09 20:03, , 7F
基本上內部沒招就是往外部發展嘍...
04/09 20:03, 7F

04/09 20:04, , 8F
時間是一招 或者把 seed 存檔也行
04/09 20:04, 8F

04/09 20:04, , 9F
getpid 也算是從外部要資料就是
04/09 20:04, 9F

04/09 20:08, , 10F
這樣是有比較行泥?
04/09 20:08, 10F

04/09 20:26, , 11F
system(腳本)
04/09 20:26, 11F
我學長是利用外部存檔方式,把每次讀的亂數次數記下來,存到檔案去 然後每次打開程式就先讀外部檔案,先讓亂數跑這麼多次數之後 再開始取亂數放到變數去,這麼一來就不會有重複了 只不過隨著次數增多,程式會越變越慢就是了 ※ 編輯: jacky1989 來自: 123.192.76.53 (04/09 22:18)

04/09 22:38, , 12F
突然發現取得tmpfile()的檔案指標位址與main的差也可以XD
04/09 22:38, 12F

04/09 22:49, , 13F
也發現stdin的指標位置似乎不是固定XD
04/09 22:49, 13F

04/10 04:11, , 14F
使用外部檔案來存放亂數的種子數,是一個很好的 idea,
04/10 04:11, 14F
※ 編輯: jacky1989 來自: 140.137.42.154 (04/21 14:20)
文章代碼(AID): #1De28IYW (C_and_CPP)