程序設(shè)計(jì)與算法2優(yōu)秀文檔_第1頁(yè)
程序設(shè)計(jì)與算法2優(yōu)秀文檔_第2頁(yè)
程序設(shè)計(jì)與算法2優(yōu)秀文檔_第3頁(yè)
程序設(shè)計(jì)與算法2優(yōu)秀文檔_第4頁(yè)
程序設(shè)計(jì)與算法2優(yōu)秀文檔_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第2章程序設(shè)計(jì)與算法關(guān)媛教學(xué)內(nèi)容2.1程序的基本組成:輸入、處理與輸出2.2算法與編程工具2.1程序的基本組成:輸入、處理與輸出2.1.1計(jì)算機(jī)解題示例計(jì)算機(jī)解題的思路一、確定得到怎樣的“輸出”結(jié)果二、確定應(yīng)當(dāng)提供怎樣的“輸入”數(shù)據(jù)三、確定如何“處理”輸入數(shù)據(jù)可以獲得相應(yīng)的輸出結(jié)果輸入處理輸出2.1.1計(jì)算機(jī)解題示例利用計(jì)算機(jī)求一個(gè)三角形的面積輸出:三角形的面積值(s)輸入:三角形的三條邊長(zhǎng)度(a,b,c)處理:p=(a+b+c)/2s=[p(p-a)(p-b)(p-c)]2.1.2程序設(shè)計(jì)的一般步驟分析:?jiǎn)栴}定義(輸出、輸入)設(shè)計(jì):計(jì)劃解題(算法)創(chuàng)建界面:確定創(chuàng)建界面的對(duì)象編碼:用程序設(shè)計(jì)語(yǔ)言描述算法測(cè)試與調(diào)試:查找并排除程序中的錯(cuò)誤完成文檔:整理和組織描述程序的所有資料2.2算法與編程工具可行性:每一步都可以執(zhí)行4求最大公約數(shù)的流程圖設(shè)計(jì):計(jì)劃解題(算法)三、確定如何“處理”輸入數(shù)據(jù)可以獲得相應(yīng)的輸出結(jié)果s=[p(p-a)(p-b)(p-c)]利用計(jì)算機(jī)求一個(gè)三角形的面積1程序的基本組成:輸入、處理與輸出可行性:每一步都可以執(zhí)行輸入:三角形的三條邊長(zhǎng)度(a,b,c)用計(jì)算機(jī)解決某個(gè)問(wèn)題的方法和步驟(狹義)測(cè)試與調(diào)試:查找并排除程序中的錯(cuò)誤程序編碼:用某一程序設(shè)計(jì)語(yǔ)言所提供的語(yǔ)言成分,根據(jù)該語(yǔ)言的特點(diǎn),并利用該語(yǔ)言的各種工具和手段,遵照規(guī)定的語(yǔ)法規(guī)則去實(shí)現(xiàn)算法,得到源程序代碼,計(jì)算機(jī)才可識(shí)別并執(zhí)行。S4使N=R,即用R代換N;用計(jì)算機(jī)解決某個(gè)問(wèn)題的方法和步驟(狹義)2程序設(shè)計(jì)的一般步驟可行性:每一步都可以執(zhí)行二、確定應(yīng)當(dāng)提供怎樣的“輸入”數(shù)據(jù)2.2算法與編程工具算法:解決某個(gè)問(wèn)題或處理某件事的方法和步驟(廣義);用計(jì)算機(jī)解決某個(gè)問(wèn)題的方法和步驟(狹義)算法可分為兩類:數(shù)值計(jì)算算法非數(shù)值計(jì)算算法2.2算法與編程工具計(jì)算方法:研究如何把一個(gè)復(fù)雜的運(yùn)算處理分解成簡(jiǎn)單操作的組合。簡(jiǎn)單操作包括:數(shù)據(jù)的存取、輸入輸出,算術(shù)運(yùn)算、邏輯運(yùn)算,比較、判斷、轉(zhuǎn)移判斷一個(gè)算法優(yōu)劣的標(biāo)準(zhǔn):正確性、運(yùn)行效率、占用系統(tǒng)資源多少、便于理解、易于維護(hù)2.2.3算法的特征確定性:算法每一步都確切無(wú)誤,沒(méi)有歧義性可行性:每一步都可以執(zhí)行有窮性:程序在一定時(shí)間能可以執(zhí)行完畢輸入性:可以從計(jì)算機(jī)外部獲得數(shù)據(jù),也就是可以接受用戶輸入的數(shù)據(jù)輸出性:可以看到程序運(yùn)行的結(jié)果2.2.2算法示例[題目]:求兩個(gè)自然數(shù)的最大公約數(shù)[分析]:求最大公約數(shù)的常用方法是輾轉(zhuǎn)相除法(歐幾里德算法)20128

4

0128

8

4

4

0M=4即最大公約數(shù)自然數(shù)M自然數(shù)N余數(shù)RN=4即最大公約數(shù)2.2.4算法的描述S1輸入兩個(gè)自然數(shù):M,N;S2求M除以N,得余數(shù)R;S3使M=N,即用N代換M;S4使N=R,即用R代換N;S5若R≠0,是,則重復(fù)執(zhí)行S2,S3,S4,否,則轉(zhuǎn)至S6S6輸出M,M即為M、N的最大公約數(shù)4求最大公約數(shù)的流程圖用計(jì)算機(jī)解決某個(gè)問(wèn)題的方法和步驟(狹義)一、確定得到怎樣的“輸出”結(jié)果S4使N=R,即用R代換N;[題目]:求兩個(gè)自然數(shù)的最大公約數(shù)第2章程序設(shè)計(jì)與算法程序編碼:用某一程序設(shè)計(jì)語(yǔ)言所提供的語(yǔ)言成分,根據(jù)該語(yǔ)言的特點(diǎn),并利用該語(yǔ)言的各種工具和手段,遵照規(guī)定的語(yǔ)法規(guī)則去實(shí)現(xiàn)算法,得到源程序代碼,計(jì)算機(jī)才可識(shí)別并執(zhí)行。4求最大公約數(shù)的流程圖[分析]:求最大公約數(shù)的常用方法是輾轉(zhuǎn)相除法(歐幾里德算法)可行性:每一步都可以執(zhí)行程序編碼:用某一程序設(shè)計(jì)語(yǔ)言所提供的語(yǔ)言成分,根據(jù)該語(yǔ)言的特點(diǎn),并利用該語(yǔ)言的各種工具和手段,遵照規(guī)定的語(yǔ)法規(guī)則去實(shí)現(xiàn)算法,得到源程序代碼,計(jì)算機(jī)才可識(shí)別并執(zhí)行。2程序設(shè)計(jì)的一般步驟一、確定得到怎樣的“輸出”結(jié)果判斷一個(gè)算法優(yōu)劣的標(biāo)準(zhǔn):正確性、運(yùn)行效率、占用系統(tǒng)資源多少、便于理解、易于維護(hù)創(chuàng)建界面:確定創(chuàng)建界面的對(duì)象計(jì)算方法:研究如何把一個(gè)復(fù)雜的運(yùn)算處理分解成簡(jiǎn)單操作的組合。2.2.4算法的描述起止框輸入/輸入框判斷框處理框流程線流程圖的圖形符號(hào)算法僅提供解題思路,計(jì)算機(jī)不可直接執(zhí)行??尚行裕好恳徊蕉伎梢詧?zhí)行一、確定得到怎樣的“輸出”結(jié)果創(chuàng)建界面:確定創(chuàng)建界面的對(duì)象S3使M=N,即用N代換M;算法:解決某個(gè)問(wèn)題或處理某件事的方法和步驟(廣義);二、確定應(yīng)當(dāng)提供怎樣的“輸入”數(shù)據(jù)判斷一個(gè)算法優(yōu)劣的標(biāo)準(zhǔn):正確性、運(yùn)行效率、占用系統(tǒng)資源多少、便于理解、易于維護(hù)簡(jiǎn)單操作包括:數(shù)據(jù)的存取、輸入輸出,算術(shù)運(yùn)算、邏輯運(yùn)算,比較、判斷、轉(zhuǎn)移S6輸出M,M即為M、N的最大公約數(shù)4求最大公約數(shù)的流程圖可行性:每一步都可以執(zhí)行2程序設(shè)計(jì)的一般步驟2.2.4求最大公約數(shù)的流程圖開始結(jié)束輸入M、N輸出M求R=MMODNM=NN=RR≠0是否2.2.4算法的描述算法僅提供解題思路,計(jì)算機(jī)不可直接執(zhí)行。程序編碼:用某一程序設(shè)計(jì)語(yǔ)言所提供的語(yǔ)言成分,根據(jù)該語(yǔ)言的特點(diǎn),并利用該語(yǔ)言的各種工具和手段,遵照規(guī)定的語(yǔ)法規(guī)則去實(shí)現(xiàn)算法,得到源程序代碼,計(jì)算機(jī)才可識(shí)別并執(zhí)行。2.2.5基本算法結(jié)構(gòu)任何算法都可由以下三種基本結(jié)構(gòu)實(shí)現(xiàn)語(yǔ)句1語(yǔ)句2條件滿足?語(yǔ)句塊

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(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)論