- 帖子
- 1018
- 主題
- 15
- 精華
- 0
- 積分
- 1058
- 點名
- 0
- 作業系統
- win7 32bit
- 軟體版本
- Office 2016 64-bit
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 桃園
- 註冊時間
- 2012-5-9
- 最後登錄
- 2022-9-28
|
回復 stillfish00
實測後仍不滿意,呼叫m次後,不會回到第一組產生的隨機數,
主因是 tmp = a * seed +c ...
stillfish00 發表於 2013-11-1 08:16 
後來改為 tmp = (a mod m) *( seed mod m) + c 即可,
產生之模數不變,又因m = 2^24時, tmp為小於2^49之整數,
double之精確度可完整表示,不會有誤差。
#16 測試也可正常循環。 |
|