作者pluss (有新進信件還沒看)
站內NTUEE_VAL
標題Re: [情報] 有關亂數
時間Sat Jun 19 16:46:23 2010
我也提供一個random library吧
這是于天立老師寫的 我覺得滿好用的
(于天立號稱是目前field space最大的)
原本有4個file,我把它包成static library了
放在ftp/upload/Random裡面
用法簡單,但他是個class,所以純C code要使用會比較麻煩
※ 引述《Ross0916 ()》之銘言:
: 由於系統提供的 rand() 不夠亂
: 我去找了一個號稱很亂 看起來很厲害的亂數 library
: 使用如下:
: 1. 請到這裡:
: http://www.agner.org/random/
: 抓第二個 "Uniform random number generators as binary libraries"
: 也就是 randoma.zip
: 2. 抓下來解開有一大堆檔,其實只需要三個檔
: randoma.h
: randomc.h
: randomaelf32.a
: 把這三個檔丟到 /pathg 裡頭
: 3. 改 pathgame.c 如下:
: - 最前面加上
: include "randoma.h"
: - randomize() 中
: 最後一行本來是
: srand(i0);
: 改成:
: SFMTgenRandomInit(i0, 1);
: - random_restrict_sync() 裡
: 有用到 rand() 的兩處要改
: 分別改成這樣:
: k = SFMTgenIRandomX(0, (PX_AVAILABLE_COUNT[INDEX_ENVR]+PX_AVAILABLE_COUNT[INDEX_SPEC]) - 1);
: k = SFMTgenIRandomX(0, PX_AVAILABLE_COUNT[INDEX_MODL] - 1);
: 其中 SFMTgenIRandomX 的第一二個參數就是亂數的下限、上限
: 4. 改 pathgmake 中的 pathg 那段如下
: pathg : pathgame.o pathgame_strategy.o redlib.a randomaelf32.a;
: gcc ${FLAG} -o pathg pathgame.o pathgame_strategy.o redlib.a randomaelf32.a
: 5. make -f pathgmake
: 這樣應該就可以用啦!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.42.137
1F:→ lhyang:印象中是一個日本人寫的,于再包起來 06/20 15:16