![枚舉算法_舉例_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-7/5/38e85c2a-b845-46c2-ba6f-4553d3813569/38e85c2a-b845-46c2-ba6f-4553d38135691.gif)
![枚舉算法_舉例_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-7/5/38e85c2a-b845-46c2-ba6f-4553d3813569/38e85c2a-b845-46c2-ba6f-4553d38135692.gif)
![枚舉算法_舉例_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-7/5/38e85c2a-b845-46c2-ba6f-4553d3813569/38e85c2a-b845-46c2-ba6f-4553d38135693.gif)
![枚舉算法_舉例_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-7/5/38e85c2a-b845-46c2-ba6f-4553d3813569/38e85c2a-b845-46c2-ba6f-4553d38135694.gif)
![枚舉算法_舉例_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-7/5/38e85c2a-b845-46c2-ba6f-4553d3813569/38e85c2a-b845-46c2-ba6f-4553d38135695.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、課前思考 有一個(gè)三位數(shù)x,百位是a,十位是b,個(gè)位是c,x=100*a+10*b+c,利用適當(dāng)?shù)腣B表達(dá)式求出 a= b= c=X mod 10 x10 mod 10 x100 小明是一個(gè)數(shù)學(xué)迷,昨天他約了幾個(gè)同學(xué)小明是一個(gè)數(shù)學(xué)迷,昨天他約了幾個(gè)同學(xué)一起到會(huì)議室里舉行一個(gè)聯(lián)誼會(huì),可是粗心的一起到會(huì)議室里舉行一個(gè)聯(lián)誼會(huì),可是粗心的小明去總務(wù)處拿了一串鑰匙回來準(zhǔn)備開門時(shí),小明去總務(wù)處拿了一串鑰匙回來準(zhǔn)備開門時(shí),卻忘記了到底哪一把才是會(huì)議室的鑰匙。卻忘記了到底哪一把才是會(huì)議室的鑰匙。假設(shè)假設(shè)這串鑰匙一共有這串鑰匙一共有1010把。把。怎樣才能找到正確的鑰匙來開門怎樣才能找到正確的鑰匙來開門 找鑰匙的
2、過程2.拿出第二把鑰匙,拿出第二把鑰匙, 試驗(yàn)第二把鑰匙能否開門;試驗(yàn)第二把鑰匙能否開門;1.拿出第一把鑰匙,拿出第一把鑰匙, 試驗(yàn)第一把鑰匙能否開門;試驗(yàn)第一把鑰匙能否開門;3.拿出第三把鑰匙,拿出第三把鑰匙, 試驗(yàn)第三把鑰匙能否開門;試驗(yàn)第三把鑰匙能否開門;10.拿出第十把鑰匙,拿出第十把鑰匙, 試驗(yàn)第十把鑰匙能否開門。試驗(yàn)第十把鑰匙能否開門。列舉列舉檢驗(yàn)檢驗(yàn)枚舉法枚舉法枚舉算法枚舉算法就是按照問題本身的性質(zhì),就是按照問題本身的性質(zhì),一一列舉一一列舉出該問題所有可能的解,并根據(jù)問題的條件對(duì)各出該問題所有可能的解,并根據(jù)問題的條件對(duì)各解進(jìn)行解進(jìn)行逐個(gè)檢驗(yàn)逐個(gè)檢驗(yàn),從中挑選出符合條件的解,舍,
3、從中挑選出符合條件的解,舍棄不符合條件的解。棄不符合條件的解。在聯(lián)歡會(huì)上,小明提議大家來玩數(shù)7的游戲。游戲規(guī)則游戲規(guī)則:從1開始數(shù)起,每個(gè)人數(shù)一個(gè)數(shù), 凡是遇到7的倍數(shù)就要喊“過”, 這樣一直數(shù)到100為止。幫小明找出幫小明找出1100所有要喊所有要喊“過過”的數(shù)的數(shù)列舉列舉檢驗(yàn)檢驗(yàn)用變量用變量i表示要列舉的自然數(shù)。表示要列舉的自然數(shù)。列舉范圍:列舉范圍:1100檢驗(yàn)條件:檢驗(yàn)條件:i能否被能否被7整除。整除。在列舉過程中要既不遺漏,又不重復(fù)。開始開始結(jié)束結(jié)束NNYYi=100i mod 7=0i=i+1i=1輸出輸出i列舉范圍:列舉范圍:1100檢驗(yàn)條件:檢驗(yàn)條件:i能否被能否被7整除。整除
4、。用變量用變量i表示要列舉的自然數(shù)。表示要列舉的自然數(shù)。開始開始結(jié)束結(jié)束NNYYi=100i mod 7=0i=i+1i=1輸出輸出i(循環(huán)結(jié)構(gòu))(循環(huán)結(jié)構(gòu))(分支結(jié)構(gòu))(分支結(jié)構(gòu))循環(huán)中嵌套分支i=1Do while i=100 if i mod 7=0 then print i end if i=i+1loop開始開始結(jié)束結(jié)束NNYYi=100i mod 7=0i=i+1i=1輸出輸出i枚舉算法的設(shè)計(jì)步驟 確定列舉范圍 明確檢驗(yàn)條件 確定循環(huán)控制方式和列舉方式枚舉算法只適用于可能解的個(gè)數(shù)不太多的情況。 一張單據(jù)上有一個(gè)一張單據(jù)上有一個(gè)5 5位數(shù)的編號(hào),萬位數(shù)是位數(shù)的編號(hào),萬位數(shù)是1 1,千
5、位,千位數(shù)是數(shù)是4 4,百位數(shù)是,百位數(shù)是7 7,個(gè)位數(shù)是,個(gè)位數(shù)是8 8,十位數(shù)已經(jīng)模糊不清,十位數(shù)已經(jīng)模糊不清,只知道該,只知道該5 5位數(shù)是位數(shù)是7 7或或1111的倍數(shù),找出所有滿足這些條的倍數(shù),找出所有滿足這些條件的件的5 5位數(shù)并輸出。位數(shù)并輸出。 NO. 147 ? 8列舉范圍:列舉范圍:09檢驗(yàn)條件:檢驗(yàn)條件:n能被能被5或者或者11整除。整除。即:即:(n mod 7=0) or (n mod 11=0)用變量用變量i表示十位上的數(shù);變量表示十位上的數(shù);變量n表示這個(gè)表示這個(gè)5位數(shù)。位數(shù)。開始開始i=0i10(n mod 7=0) or(n mod 11=0)輸出輸出ni=i
6、+1結(jié)束結(jié)束NNYY程序代碼:程序代碼:i=0Do while i10 n=14708+i*10 if n mod 7=0 or n mod 11=0 then Print n end if i=i+1Loopn=14708+i*10生活中的枚舉算法實(shí)例生活中的枚舉算法實(shí)例 找鑰匙找鑰匙 警察審案警察審案 挑爛蘋果挑爛蘋果1.枚舉算法的概念枚舉算法的概念2.枚舉算法的結(jié)構(gòu)特征枚舉算法的結(jié)構(gòu)特征4.枚舉算法的應(yīng)用枚舉算法的應(yīng)用3.枚舉算法的設(shè)計(jì)步驟枚舉算法的設(shè)計(jì)步驟 一張單據(jù)上有一個(gè)一張單據(jù)上有一個(gè)5 5位數(shù)的編號(hào),千位數(shù)是位數(shù)的編號(hào),千位數(shù)是1 1,百位,百位數(shù)是數(shù)是7 7,個(gè)位數(shù)是,個(gè)位數(shù)是
7、8 8,萬位數(shù)和十位數(shù)已經(jīng)模糊不清,只,萬位數(shù)和十位數(shù)已經(jīng)模糊不清,只知道該知道該5 5位數(shù)是位數(shù)是7 7或或1111的倍數(shù),找出所有滿足這些條件的的倍數(shù),找出所有滿足這些條件的5 5位數(shù)并輸出。位數(shù)并輸出。 NO. ? 17 ? 8 該題要列舉的對(duì)象有兩個(gè),分別是萬位數(shù)和個(gè)位數(shù)。用循環(huán)的嵌套。找出找出1-10001-1000中所有能被中所有能被7 7和和1111整除的數(shù)。整除的數(shù)。 c開始結(jié)束TFi=1i=1000i=i+1TF輸出 ii mod 7=0 andi mod 11=0i mod 77=0i mod 3=0雞翁一,值錢五,雞母一,值錢三,雞雛三,值錢雞翁一,值錢五,雞母一,值錢三
8、,雞雛三,值錢一,百錢買百雞,問翁、母、雛各幾何?一,百錢買百雞,問翁、母、雛各幾何?一一列舉:初值:終值:遞增值: a 0 20 1檢驗(yàn):雞翁雞翁 雞母雞母 雞雛雞雛 b 0 33 1 c 0 100 3a*5+b*3+c/3=100開始TFa=0a=20結(jié)束TFb=0b=33TFc=0c=100TFc=c+3b=b+1a=a+1a*5+b*3+c/3=100輸出 a、b、c求求1-1000中,能被中,能被3整除的數(shù)整除的數(shù)開始結(jié)束TFi=1i=1000i=i+1i mod 3=0TF輸出 ii mod 3=0TF輸出 i檢驗(yàn)檢驗(yàn):枚舉時(shí)注意:不遺漏,不重復(fù),且可能的解有限。N NY Y輸出
9、輸出X Xx100 x100Y YN NStartStartEndEnd找出所有找出所有100,1000100,1000之間之間3535的倍數(shù)的數(shù)字。的倍數(shù)的數(shù)字。練練 習(xí)習(xí)范圍范圍: :條件:條件:初初 值:值:100100100 100 1000 1000終終 值:值:10001000步步 長:長:1 1x mod 35 = 0 用用1010元和元和5050元兩種紙幣組成元兩種紙幣組成240240元,元,共有幾種組合方式?試用枚舉算法列共有幾種組合方式?試用枚舉算法列出所有不同的取法。出所有不同的取法。練一練10 x+50y=240輸出輸出x,yYx1x1YStartStartNEndEndy 1YNN 用用1010元和元和5050元兩種元兩種紙幣組成紙幣組成240240元,共元,共有幾種組合方式?試有幾種組合方式?試用枚舉算法列出所有用枚舉算法列出所有不同的取法。不同的取法。練一練人有了知識(shí),就會(huì)具備各種分析能力,明
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 對(duì)技術(shù)研發(fā)產(chǎn)品進(jìn)行在次加工的合同范本(3篇)
- 2024-2025學(xué)年河南省青桐鳴大聯(lián)考高一上學(xué)期12月月考?xì)v史試卷
- 2025年雙方共同簽署的離婚協(xié)議
- 2025年個(gè)人購置豪華花園房合同范文
- 2025年九臺(tái)市報(bào)社資源共享合作協(xié)議
- 2025年炊具掛盤項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告模板
- 2025年策劃合作賬戶管理解除協(xié)議書范本
- 2025年配藥中心項(xiàng)目提案報(bào)告模稿
- 2025年供應(yīng)商合作關(guān)系協(xié)議文本
- 2025年中國近距離運(yùn)輸合同規(guī)定
- 2025年八省聯(lián)考四川高考生物試卷真題答案詳解(精校打印)
- 《供電營業(yè)規(guī)則》
- 企業(yè)員工退休管理規(guī)章制度(3篇)
- 執(zhí)行總經(jīng)理崗位職責(zé)
- 2025年中鐵十二局集團(tuán)招聘筆試參考題庫含答案解析
- NS3000計(jì)算機(jī)監(jiān)控系統(tǒng)使用手冊(cè)
- 小學(xué)生情緒調(diào)適課件
- 2025蛇年中小學(xué)春節(jié)寒假安全教育課件模板
- 《黑神話:悟空》跨文化傳播策略與路徑研究
- 員工食堂服務(wù)外包運(yùn)營管理方案
- DB31-T 329.17-2019 重點(diǎn)單位重要部位安全技術(shù)防范系統(tǒng)要求 第17部分:監(jiān)管場(chǎng)所
評(píng)論
0/150
提交評(píng)論