![《程序的靈魂算法》PPT課件_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/13/ebfe1c5e-554c-4fa5-b8ce-6a491904e18e/ebfe1c5e-554c-4fa5-b8ce-6a491904e18e1.gif)
![《程序的靈魂算法》PPT課件_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/13/ebfe1c5e-554c-4fa5-b8ce-6a491904e18e/ebfe1c5e-554c-4fa5-b8ce-6a491904e18e2.gif)
![《程序的靈魂算法》PPT課件_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/13/ebfe1c5e-554c-4fa5-b8ce-6a491904e18e/ebfe1c5e-554c-4fa5-b8ce-6a491904e18e3.gif)
![《程序的靈魂算法》PPT課件_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/13/ebfe1c5e-554c-4fa5-b8ce-6a491904e18e/ebfe1c5e-554c-4fa5-b8ce-6a491904e18e4.gif)
![《程序的靈魂算法》PPT課件_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/13/ebfe1c5e-554c-4fa5-b8ce-6a491904e18e/ebfe1c5e-554c-4fa5-b8ce-6a491904e18e5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第四章 程序的靈魂算法1、對數(shù)據(jù)的描述。(配料,指出應(yīng)使用那些原料)2、對操作的描述。(操作步驟,如何用料做成菜肴)3、程序設(shè)計方法。4、語言工具和環(huán)境。程序=數(shù)據(jù)結(jié)構(gòu)+算法+程序設(shè)計方法+語言工具和環(huán)境.1 算法的概念為解決一個問題而采取的方法和步驟,為解決一個問題而采取的方法和步驟,就稱為算法。就稱為算法。從北京到天津開會一首歌曲的譜子太極拳圖解計算機(jī)算法分兩大類:數(shù)值運(yùn)算算法和計算機(jī)算法分兩大類:數(shù)值運(yùn)算算法和 非數(shù)值運(yùn)算算法。非數(shù)值運(yùn)算算法。.2 簡單算法舉例例例1:求:求1*2*3*4*5方法一:步驟1:先求1*2,得到結(jié)果2。步驟2:將步驟1得到的乘積2再乘以3,得到結(jié)果6。步驟3
2、:將步驟2得到的乘積6再乘以4,得到結(jié)果24。步驟4:將步驟3得到的乘積24再乘以5, 得到最后結(jié)果120。方法二:步驟1:設(shè)p=1(p為乘數(shù))。步驟2:設(shè)i=2(i為被乘數(shù))。步驟3:使p*i,乘積仍放在變量p中,可表示為p=p*i。步驟4:使i的值加1,可表示為i=i+1 。步驟5:如果i不大于5,返回重新執(zhí)行步驟3、4、5; 否則算法結(jié)束。最后求得的p的值就是5!的值。例例2 2 有兩個變量有兩個變量a a和和b b,將它們的值交換。,將它們的值交換。 a tb采用間接交換方法。采用間接交換方法。1、at2、 ba3、 t b例例3 3 有有50個學(xué)生,要求將他們之中成績在個學(xué)生,要求將
3、他們之中成績在80分以分以上者打印出來。用上者打印出來。用n表示學(xué)生學(xué)號,表示學(xué)生學(xué)號,n1代表第一代表第一個學(xué)生學(xué)號,個學(xué)生學(xué)號,ni代表第代表第i個學(xué)生學(xué)號。用個學(xué)生學(xué)號。用g代表學(xué)代表學(xué)生成績,生成績,gi代表第代表第i個學(xué)生成績,算法可表示如下。個學(xué)生成績,算法可表示如下。S1:1=iS2:如果:如果gi80,則打印,則打印ni和和gi,否則不打,否則不打印印S3:i+1=iS4:如果:如果i50,返回,返回S2,繼續(xù)執(zhí)行;否則,繼續(xù)執(zhí)行;否則,算法結(jié)束。算法結(jié)束。例例4 4 給定一個正整數(shù)給定一個正整數(shù)M M,判斷它是否為素數(shù)。,判斷它是否為素數(shù)。所謂素數(shù),是指除了所謂素數(shù),是指除了
4、1和該數(shù)本身之外,不能被和該數(shù)本身之外,不能被其他任何整數(shù)整除的數(shù)。例如,其他任何整數(shù)整除的數(shù)。例如,13是素數(shù),因是素數(shù),因為它不能被為它不能被2,3,4,12整除。整除。判斷一個數(shù)判斷一個數(shù)n(n3)是否素數(shù)的方法是很簡單的:是否素數(shù)的方法是很簡單的:將將n作為被除數(shù),將作為被除數(shù),將2到到(n-1)各個整數(shù)輪流作為各個整數(shù)輪流作為除數(shù),如果都不能被整除,則除數(shù),如果都不能被整除,則n為素數(shù)。為素數(shù)。S1:輸入:輸入n的值的值S2:2=i (i作為除數(shù))作為除數(shù))S3:n被被i除,得余數(shù)除,得余數(shù)rS4:如果:如果r=0,表示,表示n能被能被i整除,則打印整除,則打印n“不是素不是素數(shù)數(shù)”
5、,算法結(jié)束;否則執(zhí)行,算法結(jié)束;否則執(zhí)行S5S5:i+1=iS6:如果:如果in-1,返回,返回S3;否則打?。环駝t打印 n “是素數(shù)是素數(shù)”,然后結(jié)束。然后結(jié)束。.3 算法的特點(diǎn)1、有窮性:一個算法應(yīng)包含有限的操作步驟,而不能是無限的。2、確定性:算法中每一個步驟都應(yīng)當(dāng)是確定的,不能含糊、模棱兩可。3、有零個或多個輸入。4、有一個或多個輸出。5、有效性。一、算法的特征 二、算法設(shè)計的要求二、算法設(shè)計的要求 1 正確性。正確性。算法應(yīng)當(dāng)滿足具體問題的需求?!罢_”一詞 的含義在通常的用法中有很大差別,大體 可分為四個層次: a. 程序不含語法錯誤。 b. 程序?qū)捉M輸入數(shù)據(jù)能夠得出滿足規(guī)格說明
6、 要求的結(jié)果。 c. 程序?qū)τ诰倪x擇的典型、苛刻而帶有刁 難性的幾組輸入數(shù)據(jù)能夠得出滿足規(guī)格說 明要求的結(jié)果。 d. 程序?qū)τ谝磺泻戏ǖ妮斎霐?shù)據(jù)都能產(chǎn)生滿足 規(guī)格說明要求的結(jié)果。 2 可讀性??勺x性。算法主要是為了人的閱讀和交流,可讀性 好有助于 人對算法的理解。3 健壯性。健壯性。當(dāng)輸入數(shù)據(jù)非法時,算法也能適當(dāng)做出 反應(yīng)或進(jìn)行處理,而不會產(chǎn)生莫名其妙 的輸出結(jié)果。4 效率與低存儲量需求。效率與低存儲量需求。效率指算法執(zhí)行的時間; 存儲量需求算法執(zhí)行過程中所需要的 最大存儲空間。二、算法設(shè)計的要求二、算法設(shè)計的要求 .4 算法的描述。算法的描述。 常用的描述工具有:自然語言,流程圖,N-S結(jié)
7、構(gòu)化流程圖,PAD圖,偽代碼等。 1. 程序流程圖程序流程圖 流程圖是一種傳統(tǒng)的算法表示法,它利用幾何圖形框來代表各種不同性質(zhì)的操作,用流程線來指示算法的執(zhí)行方向。由于它簡單直觀,所以應(yīng)用廣泛,特別是在早期語言階段,只有通過流程圖才能簡明地表述算法,流程圖成為程序員們交流的重要手段,直到結(jié)構(gòu)化的程序設(shè)計語言出現(xiàn),對流程圖的依賴才有所降低。處理框判斷框起始框流程線輸入/輸出框常用符號:常用符號:例1 打印x的絕對值例例2 求求5!的算法用流程圖表示的算法用流程圖表示例例3 將將50名學(xué)生中成績在名學(xué)生中成績在80分以上者的學(xué)號和成績打印出來分以上者的學(xué)號和成績打印出來例例4 判斷素數(shù)的算法判斷素數(shù)的算法三種基本結(jié)構(gòu):順序結(jié)構(gòu),選擇結(jié)構(gòu),循環(huán)結(jié)構(gòu)。AB順序結(jié)構(gòu)PBA是否選擇結(jié)構(gòu)P1A是否當(dāng)型循環(huán)BP2否是直到型循環(huán)三種基本結(jié)構(gòu)有以下共同特點(diǎn): 1 只有一個入口。 2 只有一個出口。 3 結(jié)構(gòu)內(nèi)的每一部分都有機(jī)會被執(zhí)行到, 且路徑是唯一的。 4 結(jié)構(gòu)內(nèi)沒有死循環(huán)。2. N-S結(jié)構(gòu)化流程圖結(jié)構(gòu)化流程圖 N-S圖完全去掉了流程圖中的控制流程的流線和箭頭。AB順
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度屋頂光伏系統(tǒng)維護(hù)保養(yǎng)合同模板
- 學(xué)校安全管理方案
- 2024-2025學(xué)年廣西壯族自治區(qū)高三上學(xué)期11月聯(lián)考?xì)v史試卷
- 2025年公共照明設(shè)施合同
- 2025年自動化設(shè)備購買與前期策劃協(xié)議
- 2025年住宅用地和樓宇訂購合同
- 2025年綠化養(yǎng)護(hù)承包合同范本
- 2025年外教聘請合作協(xié)議
- 2025年二手房產(chǎn)交易代理協(xié)議格式
- 2025年交通運(yùn)輸中介合同協(xié)議書范本
- GB/T 36547-2024電化學(xué)儲能電站接入電網(wǎng)技術(shù)規(guī)定
- 育嬰員初級培訓(xùn)
- 學(xué)校物業(yè)管理投標(biāo)書范本
- 護(hù)理教學(xué)組工作匯報
- 醫(yī)療廢物管理條例
- 新視野英語1學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 生活垃圾焚燒發(fā)電廠摻燒一般工業(yè)固廢和協(xié)同處置污泥項目環(huán)評資料環(huán)境影響
- 《祖國被屈辱的歷史》課件
- 小學(xué)教師法制培訓(xùn)課件
- 建筑與市政工程地下水控制技術(shù)規(guī)范 JGJ111-2016 培訓(xùn)
- 2024年汽車裝調(diào)工技能競賽理論考試題庫(含答案)
評論
0/150
提交評論