線性同餘法產生亂數

線性同餘法, 使用C語言產生1000個亂數
X=SEED;
for(i=0;i<10000;i++)
{
 X=(A*X+C)%M;
}
其中A*X+C是線性函數
X的初始值是種子數
A是乘數, 符合 0<= A < M, 且A-1可以被M的所有質因數整除, 如果M是4的倍數, A也必需是4的倍數
C是增量, 符合 0<= C < M, 且C為質數
M是模數, 符合 M>0, 且M為質數
廣告
本篇發表於 未分類。將永久鏈結加入書籤。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s