看板 C_and_CPP 關於我們 聯絡資訊
日前跟學長在聊天 有一個學長問到 現在要取得亂數 每次打開程式取的量不同 可能第一次取3個,第2次取8個...... 不用srand() 要怎麼做出跟srand相仿的功能? 這問題我想好久 最後學長跟我說了答案 才驚覺 原來是如此簡單= = 現在讓板上的高手也想想吧~~呵呵 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.192.76.53
ducksteven:getpid() ? 04/09 17:21
dontblame:要看你的個數在那個範圍。有時抓時間即可 04/09 17:53
jacky1989:就預設取0-32767阿 04/09 18:29
legnaleurc:/dev/random 04/09 18:33
firejox:做一個系統腳本然後執行 04/09 18:41
jacky1989:樓上的意思是建表吧? 04/09 18:45
LPH66:基本上內部沒招就是往外部發展嘍... 04/09 20:03
LPH66:時間是一招 或者把 seed 存檔也行 04/09 20:04
LPH66:getpid 也算是從外部要資料就是 04/09 20:04
ericinttu:這樣是有比較行泥? 04/09 20:08
firejox:system(腳本) 04/09 20:26
我學長是利用外部存檔方式,把每次讀的亂數次數記下來,存到檔案去 然後每次打開程式就先讀外部檔案,先讓亂數跑這麼多次數之後 再開始取亂數放到變數去,這麼一來就不會有重複了 只不過隨著次數增多,程式會越變越慢就是了 ※ 編輯: jacky1989 來自: 123.192.76.53 (04/09 22:18)
firejox:突然發現取得tmpfile()的檔案指標位址與main的差也可以XD 04/09 22:38
firejox:也發現stdin的指標位置似乎不是固定XD 04/09 22:49
sjgau:使用外部檔案來存放亂數的種子數,是一個很好的 idea, 04/10 04:11
※ 編輯: jacky1989 來自: 140.137.42.154 (04/21 14:20)