中國古代剩余定理的C語言實(shí)現(xiàn)_第1頁
中國古代剩余定理的C語言實(shí)現(xiàn)_第2頁
中國古代剩余定理的C語言實(shí)現(xiàn)_第3頁
中國古代剩余定理的C語言實(shí)現(xiàn)_第4頁
中國古代剩余定理的C語言實(shí)現(xiàn)_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、2012-07-19#中#國#古#代#剩#2余01定2-理07的-19C#語#言#2#0實(shí)#1#2現(xiàn)-07-19#劉繼清(武漢船舶職業(yè)技術(shù)學(xué)院電子電氣工程系 ,湖北武漢430050)摘 要 介紹剩余定理及其解題的一般方法 ,給出了 C 語言實(shí)現(xiàn)程序 ,討論了該程序的應(yīng)用范圍及進(jìn)一步改進(jìn)的方向 。關(guān)鍵詞 剩余定理 ; C 語言 ; 乘率中圖分類號(hào)T P393 . 09文獻(xiàn)標(biāo)志碼 A 文章編號(hào)1671 - 8100 (2008) 06 - 0041 - 03在公務(wù)員考試中 ,經(jīng)常有“中國剩余定理”應(yīng)用的考題 ,這類考題很多學(xué)員非常害怕 。例如 ,公 務(wù)員考試國家公務(wù)員考試行政職業(yè)能力標(biāo)準(zhǔn)用書中有這

2、樣一個(gè)題 1 : 一個(gè)三位數(shù)除以 9 余 7 ,除以 5 余 2 ,除于 4 余 3 ,問這樣的三位數(shù)共有幾 個(gè) ? 并求出這些三位數(shù) 。書上給出 了簡 單的 提 示 :關(guān)鍵是要找出三個(gè)數(shù) ,第一是某個(gè)數(shù)能夠同時(shí)被 9 和 5 整除 ,但除以 4 余 3 , 那么這個(gè)數(shù)即 : 45×3 = 135 ;第二是某個(gè)數(shù)能夠同時(shí)被 5 和 4 整除 , 但除以 9 余 7 , 那么這個(gè)數(shù)即 : 20 ×8 = 160 ; 第三 是某個(gè)數(shù)能夠同時(shí)被 4 和 9 整除 ,但除以 5 余 2 , 那么這個(gè)數(shù)即 : 36 ×2 = 72 。三 個(gè)數(shù) 之 和 135 +160 +

3、72 = 367 而 9 、5 、4 最小公倍數(shù)為 180 。因 此 ,滿足上述條件的最小自然數(shù)為 : 367 - 180 ×2= 7 。很多學(xué)員看了提示后 , 不明白 45 ×3 = 135 中的 3 ,20 ×8 = 160 中的 8 ,36 ×2 = 72 中的 2 是 怎么來的 ;為什么 180 要乘 2 ? 等等 。其實(shí) ,這是一個(gè)“中國剩余定理”的應(yīng)用問題 ,其中的 3 、8 、2稱為乘率 。等等 。那么 ,這個(gè)問題怎么解呢 ? 明朝數(shù)學(xué)家程大位把這一解法編成四句歌訣 :三人同行七十 (70) 稀 ;五樹梅花廿一 (21) 枝 ; 七子團(tuán)圓正

4、月半 (15) ; 除百零五 (105) 便得知 。歌訣中每一句話都是一步解法 : 第一句指除 以 3 的余數(shù)用 70 去乘 ;第二句指除以 5 的余數(shù)用21 去乘 ;第三句指除以 7 的余數(shù)用 15 去乘 ; 第四 句指上面乘得的三個(gè)積相加的和如超過 105 , 就減去 105 的倍數(shù) ,就得到答案了 。即 : 70 ×2 + 21×3 + 15 ×2 - 105 ×2 = 23 。孫子算經(jīng)的“物不知數(shù)”題雖然開創(chuàng)了一次 同余式研究的先河 ,但由于題目比較簡單 ,甚至用 試猜的方法也能求得 ,所以尚沒有上升到一套完 整的計(jì)算程序和理論的高度 。真正從完

5、整的計(jì)算 程序和理論上解決這個(gè)問題的 ,是南宋時(shí)期的數(shù)學(xué)家秦九韶 。秦九韶于公元 1247 年寫成的數(shù)書 九章一書中提出了一個(gè)數(shù)學(xué)方法“大衍求一術(shù)”,系統(tǒng)地論述了一次同余式組解法的基本原理和一般程序 。 從孫子算經(jīng)到秦九韶?cái)?shù)書九章對(duì)一次同余式問題的研究成果 ,在 19 世紀(jì)中期開始受到西 方數(shù)學(xué)界的重視 。1852 年 ,英國傳教士偉烈亞力向歐洲介紹了孫子算經(jīng)的“物不知數(shù)”題和秦九 韶的“大衍求一術(shù)”;1876 年 ,德國人馬蒂生指出 , 中國的這一解法與西方 19 世紀(jì)高斯算術(shù)探究1中國剩余定理我國古代數(shù)學(xué)名著孫子算經(jīng)中 ,記載這樣一個(gè)問題 “: 今有物不知其數(shù) ,三三數(shù)之剩二 ,五五數(shù)之剩

6、三 ,七七數(shù)之剩二 ,問物幾何 ?!庇矛F(xiàn)在的話 來說就是 “: 有一批物品 ,三個(gè)三個(gè)地?cái)?shù)余二個(gè) ,五 個(gè)五個(gè)地?cái)?shù)余三個(gè) ,七個(gè)七個(gè)地?cái)?shù)余二個(gè) ,問這批物品最少有多少個(gè) ?!边@個(gè)問題的解題思路 ,被稱為“孫子問題”、“鬼谷算”、“隔墻算”、“韓信點(diǎn)兵”中關(guān)于一次同余式組的解法完全一致 。從此 ,中2012-07-19#2012-07-19#2#0#1#2-07-19#收稿日期 :2008 - 08 - 26國古代數(shù)學(xué)的這一創(chuàng)造逐漸受到世界學(xué)者的矚i nt i nde x ;目 ,并在西方數(shù)學(xué)史著作中正式被稱為“中國剩余定理” 1 。lo ng re sult ;fo r (i nde x =

7、1 ; ;i nde x + + )if ( ( ( mult 1 3 mult 2 ) 3 i nde x) % div =mai nde r)re sult = ( mult 1 3 mult 2) 3 i nde x ;brea k ;ret ur n re sult ;剩余定理的解題方法剩余定理中如何解題 ? 在上面的例題中 ,式70 ×2 + 21 ×3 + 15 ×2 - 105 ×2 各部分的含義又 是什么呢 ? 我們先看 :70 、21 、15 這三個(gè)數(shù) 。通過研究 ,可以發(fā)現(xiàn)它們的特點(diǎn)是 : 70 是 5 與 7 的倍數(shù) ,而用 3 除

8、余 1 ; 21 是 3 與 7 的倍數(shù) ,而用 5 除 余 1 ;15 是 3 與 5 的倍數(shù) ,而用 7 除余 1 。所以 ,70×2 是 5 與 7 的倍數(shù) ,用 3 除余 2 ;21 ×3 是 3 與 7的倍數(shù) ,用 5 除余 3 ;15 ×4 是 3 與 5 的倍數(shù) ,用 7 除余 4 ??紤]到 3 、5 、7 互質(zhì) ,進(jìn)一步可以得到 70 是 5 與 7 最小公倍數(shù)的倍數(shù) ,21 是 3 與 7 的最小 公倍數(shù) ,15 是 3 與 5 的最小公倍數(shù) 。如果一個(gè)數(shù)以 a 除余數(shù)為 b , 那么給這個(gè)數(shù) 加上 a 的一個(gè)倍數(shù)以后再除以 a ,余數(shù)仍然是 b

9、 。所以 ,把 70 ×2 、21 ×3 與 15 ×4 都加起來所得的 結(jié)果能同時(shí)滿足“3 除余 2 、用 5 除余 3 、用 7 除余4”的要求 。至于減去 105 ×2 ,是為了求合乎題意的最小 正整數(shù)解 (其中 ,105 為 3 、5 、7 的最小公倍數(shù)) 。2= re2mai n ()lo ng lDivM ult ;lo ng l Te mp Re sult ,l Fi nal Re sult ;p ri ntf “( t Plea se i np ut t he Fi r stnumbe r :”) ;sca nf “(mai nde r)

10、 ;p ri ntf “(”) ;sca nf “(re mai nde r) ;p ri ntf “(”) ;sca nf “(mai nde r) ;% d , % d ”, &Fi r st . div , &Fi r st . re2 t Plea se i np ut yo u Seco nd numbe r :% d , % d”, &Seco nd. div , &Seco nd.剩余定理的 C 語言實(shí)現(xiàn)根據(jù) 剩 余 定 理 的 解 題 方 法 , 利 用 C 語 言 知 識(shí) ,我們假設(shè)用結(jié)構(gòu)體表示一個(gè)數(shù) 3 ,其中包括兩 個(gè)成員 : div 表示

11、除數(shù) , re mai nder 表示余數(shù) ,可定 義三個(gè)這樣的數(shù) : Fi r st , Seco nd , Thi r d 。若用 i n2 de x 表示乘率 ,函數(shù) get The Si ngleN umber 可求出 上述和式中的一項(xiàng) ( 即另兩個(gè)數(shù)的最小公倍數(shù)與 乘率之積) 。作為示例 ,可編制出解決剩余定理問 題的 C 語言程序如下 :st r uct N umberi nt div ;i nt re mai nder ; Fi r st , Seco nd , Thir d ;3 t Plea se i np ut yo u Thi r d numbe r :%d , % d”

12、, & Thi r d. div , & Thi r d . re2l Te mp Re sult = get The Si ngleN u mber ( Sec2o nd. div , Thi r d. div , Fi r st . div , Fi r st . re mai nder)+ get The Si ngleN u mbe r ( Fi r st . div , Thi r d. div , Seco nd. div , Seco nd. re mai nder)+ get The Si ngleN umber ( Fi r st . div , Seco n

13、d. div , Thir d. div , Thi r d. re mai nder) ;lDivM ult = Fi r st . div 3 Seco nd. div 3 Thi r d. div ;w hile (l Te mp Re sult > lDivM ult )l Te mp Re sult - = lDivM ult ;lo ng get The Si ngleN umbermult 2 ,i nt div ,i nt re mai nder)( i ntmult 1 , i ntp ri ntf “( t The Fi nal Re sult N umber i s

14、 :數(shù)) ,每一個(gè)不同的 k 對(duì)應(yīng)一個(gè)不同的三位數(shù) 。%dn”,l Te mp Re sult ) ;ret ur n 0 ;此外 “, 中國剩余定理”求解的是同余問題 ,也就是一般的同余問題都可以解決 。由于 C 語言 的不足 ,上述程序中只能解決三個(gè)數(shù)互質(zhì)的問題 。 如果多于三個(gè)互質(zhì)數(shù) ,則不能解決 。這一點(diǎn) ,可考 慮利用 C + + 函數(shù)的缺省值的技術(shù)來解決 。這是上述程序的局限性 。參 考 文 獻(xiàn)問題的進(jìn)一步討論上述用 C 語言編制的程序 ,可以很好地解決 “中國剩余定理”問題應(yīng)用中的三個(gè)數(shù)互質(zhì)的問 題 。在這類問題中 ,求得的是滿足條件的最小自 然數(shù) (如在“引言”中的例題 ,求得

15、的為 7) 。在實(shí) 際應(yīng)用中可能還需進(jìn)行一些變換 。如在“引言”中 的例題 ,由于要得到符合條件的三位數(shù)的個(gè)數(shù) ,因 此只需滿足 100 7 + k ×180 999 ( k 為任意整41王援農(nóng). 國家公務(wù)員考試行政職業(yè)能力標(biāo)準(zhǔn)用書 M . 北京 :中國人事出版社 ,2002張強(qiáng)華 ,呂新平. C 語言程序 設(shè)計(jì) M . 北京 : 人民郵 電出版 社 ,20012Use Language C to Real ize t he Anc ient Surpl us Theorem of ChinaL IU Ji2qing( Wuha n In stit ut e of Ship b ui

16、l di ng Tech nolo gy , Wuha n 430050 , Chi na)Abstract : Thi s p ap e r fi r st i nt ro duce s t he a ncie nt Surp l u s Theo re m of Chi na a nd met ho ds tosolve t he se ki nds of p ro ble ms , t he n give s o ut t he p ro gra m co de d by t he a ut ho r hi mself i n L a ngua ge C to realize it . Af t e rwa r ds it al so di scu sse s t he app lied fiel d a nd i mp ro ve me nt di2 rectio n of t he p ro gra m.Key words :Surp l u s t heo re m ; C L a ngua ge ; multip l y ratio(責(zé)任編輯 :譚銀元)Your request could not be processed because of a c

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論