1.3.1《算法案例-輾轉(zhuǎn)相除法與更相減損術(shù)》_第1頁(yè)
1.3.1《算法案例-輾轉(zhuǎn)相除法與更相減損術(shù)》_第2頁(yè)
1.3.1《算法案例-輾轉(zhuǎn)相除法與更相減損術(shù)》_第3頁(yè)
1.3.1《算法案例-輾轉(zhuǎn)相除法與更相減損術(shù)》_第4頁(yè)
1.3.1《算法案例-輾轉(zhuǎn)相除法與更相減損術(shù)》_第5頁(yè)
已閱讀5頁(yè),還剩14頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1.3.1算法案例-輾轉(zhuǎn)相除法與更相減損術(shù)教學(xué)目標(biāo) 1.理解輾轉(zhuǎn)相除法與更相減損術(shù)中蘊(yùn)含的數(shù)學(xué)原理,并能根據(jù)這些原理進(jìn)行算法分析;2.能根據(jù)算法語(yǔ)句與程序框圖的知識(shí)設(shè)計(jì)完整的程序框圖并寫(xiě)出算法程序. 教學(xué)重點(diǎn) :理解輾轉(zhuǎn)相除法與更相減損術(shù)求最大公約數(shù)的方法 教學(xué)難點(diǎn) :轉(zhuǎn)相除法與更相減損術(shù)的方法轉(zhuǎn)換成程序框圖與程序語(yǔ)言。案例1 輾轉(zhuǎn)相除法與更相減損術(shù)1. 回顧算法的三種表述:自然語(yǔ)言程序框圖程序語(yǔ)言(三種邏輯結(jié)構(gòu))(五種基本語(yǔ)句)2. 思考: 小學(xué)學(xué)過(guò)的求兩個(gè)數(shù)最大公約數(shù)的方法? 先用兩個(gè)公有的質(zhì)因數(shù)連續(xù)去除,一直除到所得的商是互質(zhì)數(shù)為止,然后把所有的除數(shù)連乘起來(lái).1、求兩個(gè)正整數(shù)的最大公約數(shù)

2、求18和30的最大公約數(shù)所以,18和30的最大公約數(shù)為62、除了用這種方法外還有沒(méi)有其它方法?算出8256和6105的最大公約數(shù).轉(zhuǎn)相除法(歐幾里得算法)觀察用輾轉(zhuǎn)相除法求8251和6105的最大公約數(shù)的過(guò)程 第一步 用兩數(shù)中較大的數(shù)除以較小的數(shù),求得商和余數(shù)8251=61051+2146結(jié)論: 8251和6105的公約數(shù)就是6105和2146的公約數(shù),求8251和6105的最大公約數(shù),只要求出6105和2146的公約數(shù)就可以了。第二步 對(duì)6105和2146重復(fù)第一步的做法6105=21462+1813同理6105和2146的最大公約數(shù)也是2146和1813的最大公約

3、數(shù)。 為什么呢?思考:從上述的過(guò)程你體會(huì)到了什么?完整的過(guò)程8251=61051+2146 6105=21462+1813 2146=18131+3331813=3335+148333=1482+37148=374+0例2 用輾轉(zhuǎn)相除法求225和135的最大公約數(shù)225=1351+90135=901+4590=452顯然37是148和37的最大公約數(shù),也就是8251和6105的最大公約數(shù) 顯然45是90和45的最大公約數(shù),也就是225和135的最大公約數(shù) 思考1:從上面的兩個(gè)例子可以看出計(jì)算的規(guī)律是什么? S1:用大數(shù)除以小數(shù)S2:除數(shù)變成被除數(shù),余數(shù)變成除數(shù)S3:重復(fù)S1,直到余數(shù)為0 輾轉(zhuǎn)

4、相除法是一個(gè)反復(fù)執(zhí)行直到余數(shù)等于0停止的步驟,這實(shí)際上是一個(gè)循環(huán)結(jié)構(gòu)。8251=61051+2146 6105=21462+1813 2146=18131+3331813=3335+148333=1482+37148=374+0m = n q r用程序框圖表示出右邊的過(guò)程r=m MOD nm = nn = rr=0?是否思考2:輾轉(zhuǎn)相除法中的關(guān)鍵步驟是哪種邏輯結(jié)構(gòu)? 1、輾轉(zhuǎn)相除法(歐幾里得算法)(1)算理:所謂輾轉(zhuǎn)相除法,就是對(duì)于給定的兩個(gè)數(shù),用較大的數(shù)除以較小的數(shù)。若余數(shù)不為零,則將余數(shù)和較小的數(shù)構(gòu)成新的一對(duì)數(shù),繼續(xù)上面的除法,直到大數(shù)被小數(shù)除盡,則這時(shí)較小的數(shù)就是原來(lái)兩個(gè)數(shù)的最大公約數(shù)。

5、(2)算法步驟第一步:輸入兩個(gè)正整數(shù)m,n(mn).第二步:計(jì)算m除以n所得的余數(shù)r.第三步:m=n,n=r.第四步:若r0,則m,n的最大公約數(shù)等于m; 否則轉(zhuǎn)到第二步. 第五步:輸出最大公約數(shù)m.(3)程序框圖(4)程序INPUT “m,n=“;m,nDO r=m MOD n m=n n=rLOOP UNTIL r=0PRINT mEND開(kāi)始輸入m,n r=m MOD n m=nr=0?是否 n=r 輸出m結(jié)束九章算術(shù)更相減損術(shù) 算理:可半者半之,不可半者,副置分母、子之?dāng)?shù),以少減多,更相減損,求其等也,以等數(shù)約之。第一步:任意給定兩個(gè)正整數(shù);判斷他們是否都是偶數(shù)。若是,則用2約簡(jiǎn);若不是

6、則執(zhí)行第二步。第二步:以較大的數(shù)減較小的數(shù),接著把所得的差與較小的數(shù)比較,并以大數(shù)減小數(shù)。繼續(xù)這個(gè)操作,直到所得的減數(shù)和差相等為止,則這個(gè)等數(shù)就是所求的最大公約數(shù)。2、更相減損術(shù)(1)算理:所謂更相減損術(shù),就是對(duì)于給定的兩個(gè)數(shù),用較大的數(shù)減去較小的數(shù),然后將差和較小的數(shù)構(gòu)成新的一對(duì)數(shù),再用較大的數(shù)減去較小的數(shù),反復(fù)執(zhí)行此步驟直到差數(shù)和較小的數(shù)相等,此時(shí)相等的兩數(shù)便為原來(lái)兩個(gè)數(shù)的最大公約數(shù)。(2)算法步驟第一步:輸入兩個(gè)正整數(shù)a,b(ab);第二步:若a不等于b ,則執(zhí)行第三步;否則轉(zhuǎn)到第五步;第三步:把a(bǔ)-b的差賦予r;第四步:如果br, 那么把b賦給a,把r賦給b;否則把r賦給a,執(zhí)行第二步

7、;第五步:輸出最大公約數(shù)b.(3)程序框圖(4)程序INPUT “a,b=“;a,bWHILE ab r=a-b IF br THEN a=b b=r ELSE a=r END IFWENDPRINT bEND開(kāi)始輸入a,bab?是否 輸出b結(jié)束 b=ra=br=a-brb?a=r否是例3 用更相減損術(shù)求98與63的最大公約數(shù)解:由于63不是偶數(shù),把98和63以大數(shù)減小數(shù),并輾轉(zhuǎn)相減 9863356335283528728721217211477所以,98和63的最大公約數(shù)等于7 用更相減損術(shù)求兩個(gè)正數(shù)84與72的最大公約數(shù) 練習(xí):先約簡(jiǎn),再求21與18的最大公約數(shù),然后乘以?xún)纱渭s簡(jiǎn)的質(zhì)因數(shù)4例3、求324、243、135這三個(gè)數(shù)的最大公約數(shù)。思路分析:求三個(gè)數(shù)的最大公約數(shù)可以先求出兩個(gè)數(shù)的最大公約數(shù),第三個(gè)數(shù)與前兩個(gè)數(shù)的最大公約數(shù)的最大公約數(shù)即為所求。比較輾轉(zhuǎn)相除法與更相減損術(shù)的區(qū)別(1)都是求最大公約數(shù)的方法,計(jì)算上輾轉(zhuǎn)相

溫馨提示

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

評(píng)論

0/150

提交評(píng)論