Midsquare method(中間平方法 / 平方取中法)
這部份主要參考 The Art Of Computer Programming.
這方法於 1946 年前後,John Von Neumann 建議用這方法生成亂數。辦法是取前面亂數的平方後,再取中間的數字。如生成 10 位數,先前之值為 1234567890,其平方為 1524157875019052100,於是下個亂數便為 1578750190。
edisonx 發表在 痞客邦 留言(0) 人氣(1,117)
前言
1. 這系列文章主要在探討亂數問題,我認為任何 coder 即使不知道如何寫出一份亂數產生器,但應必須知道亂數之原理及其使用之注意事項。
2. 此系列文章所參考之資料甚多,也承蒙各方好手之指導,由於內容真的有點多,若無心想一一探討,可參考 目錄 之部份,選擇自己所需之部份加以進修即可。
3. 部份綴詞沒使用得很好,主因乃試著將閱讀過的英文文獻,以中文去解釋它,部份單字我仍會保留原文,若覺語意有誤,請不吝指正。
edisonx 發表在 痞客邦 留言(0) 人氣(1,891)
這部份的參考資料還多了一份 pdf
16. 質數個數問題
這符號是 π(x),但為顯示不正常,一律用 pi(x) 表示。
pi(x) 為一函式,代表的是小於等於 x 以下的所有質數個數為幾個,
edisonx 發表在 痞客邦 留言(0) 人氣(764)
[警示] 此篇文章所展示之程式碼,只是為「概念上」之程式碼,實際上使用時,會有「溢位」問題。
13. 費馬小定理
edisonx 發表在 痞客邦 留言(0) 人氣(3,559)
8. 篩法概述
全名為 埃拉托斯特尼(Eratosthenes,古希臘數學家) 篩法,這裡只概述其大致概念。
假設要找出 1~40(別太大,不然不好說明)內所有質數,先從 1 寫到 40
edisonx 發表在 痞客邦 留言(0) 人氣(8,335)
前二、三個星期幾乎每天都在搞這個,但原始碼實在又多又亂,
說是「深入」其實有點不敢當,畢竟沒有很嚴謹的定義、計算,
只放上一些重點與心得做筆記,也供日後對質數有興趣的網友們一份簡易之參考。
為保持說明之清晰,部份程式碼將不進行任何優化,以最原始方式呈現。
edisonx 發表在 痞客邦 留言(1) 人氣(1,719)
ptt 上看到的問題,原題意是在 Dev-C 下要發出聲音,
一開始我沒幫忙解得很好,
於此將該原始碼做修改與備份 ,有空再補上怎麼看簡單的譜寫 code 之心得。
edisonx 發表在 痞客邦 留言(2) 人氣(3,723)
題目說明
在中國象棋中,雙方之「將」與「帥」不能碰面,假設棋盤上只剩「將」與「帥」二子 (約定用 A 表示「將」,B 表示「帥」),且被限制在己方之 3*3 正方格內移動。
請寫出一程式,輸出 A, B 所有合法位置,並要求只能用一變數。
edisonx 發表在 痞客邦 留言(0) 人氣(1,315)
這是個有趣的問題..
網路上許多文章提到用 bitwise 可增進程式效能,例如:
k = i*2 ,可用 k = i<<1 取代; 而 k = i*8,可用 k=i<<3 取代,
手邊一些 topic 後來發現,這些「秘密」似乎不完全絕對,
edisonx 發表在 痞客邦 留言(2) 人氣(7,185)
這個應用程式無法啟動,因為找不到 MSVCD90D.dll,
重新安裝應用程式可能可以解決這個問題
edisonx 發表在 痞客邦 留言(0) 人氣(3,970)