下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第二章算法-程序的靈魂,一個(gè)程序主要包括(1)數(shù)據(jù)的說(shuō)明兩個(gè)茄子信息。指定程序要使用的數(shù)據(jù)、這些數(shù)據(jù)的類型以及數(shù)據(jù)的組織格式是對(duì)數(shù)據(jù)結(jié)構(gòu)(數(shù)據(jù)結(jié)構(gòu))(2)的操作的說(shuō)明。也就是說(shuō),需要電腦操作的步驟“算法”(algorithm)是操作對(duì)象的操作,用于加工數(shù)據(jù)以獲得所需結(jié)果。著名的計(jì)算機(jī)科學(xué)家Nikiklaus Wirth是算法數(shù)據(jù)結(jié)構(gòu)=節(jié)目,一個(gè)程序是算法和數(shù)據(jù)結(jié)構(gòu)之外的主要元素。此外,必須使用結(jié)構(gòu)化計(jì)算機(jī)編程方法表示計(jì)算機(jī)編程、算法、數(shù)據(jù)結(jié)構(gòu)、計(jì)算機(jī)編程方法和語(yǔ)言工具的計(jì)算機(jī)語(yǔ)言之一。計(jì)算機(jī)編程人必須具備的知識(shí)。算法是解決“做什么”和“怎么做”問(wèn)題的程序的操作語(yǔ)句。如果不理解算法,就不能編程。
2、2.1什么是算法2.2?簡(jiǎn)單的算法示例2.3算法特性2.4是算法2.5結(jié)構(gòu)化計(jì)算機(jī)編程方法,2.1是算法,廣義上來(lái)說(shuō),為解決一個(gè)問(wèn)題而采取的方法和步驟稱為“算法”。對(duì)于同一問(wèn)題,可以徐璐有不同的問(wèn)題解決方法和步驟,也可以分為算法質(zhì)量考慮、有效的算法選擇、2.1算法、電腦算法兩個(gè)茄子主要類別:數(shù)值計(jì)算算法非數(shù)值計(jì)算算法數(shù)值運(yùn)算的目的是數(shù)值解決方案非數(shù)值運(yùn)算涉及的面很廣,最常見的是事務(wù)管理領(lǐng)域,2.2簡(jiǎn)單算法示例,示例2.1 12345可以用最原始的方法完成。步驟1:首先,將步驟2:步驟1中得到的乘積2乘以3,結(jié)果為6牙齒。步驟3:6乘以4等于24。步驟4: 24乘以5等于120牙齒。這是最終結(jié)果
3、。示例2.1 12345 1000,太麻煩,2.2簡(jiǎn)單算法示例,改進(jìn)的算法:將變量P設(shè)置為乘數(shù)變量I以獲得循環(huán)算法結(jié)果,2.2簡(jiǎn)單算法示例,S1: p=1或1p S2: i=2,否則,算法結(jié)束后P的值為5!值,如果是1000,求什么?2.2簡(jiǎn)單的算法示例,S1: p=1,或1p S2: i=2,或2i S3: P乘以I,然后將乘積放入變量P,即p*ip S4: I值加1,否則,算法結(jié)束后P的值為5!求1357911,3,3,2,2,11等于I 11。例2.2要求輸出50個(gè)學(xué)生,80分以上的學(xué)生學(xué)號(hào)和成績(jī)。Ni輸出第I學(xué)生學(xué)號(hào),gi輸出第I學(xué)生成績(jī)S1: 1i S2: gi80的ni和gi,否則
4、,如果不輸出S3: I 1i S4: i50,則返回步驟S2繼續(xù)。否則,算法結(jié)束,示例2.3判斷2閏年條件:(1)可分為4,但不能除以100的年份是閏年。例如,2008年、2012年、2048年(2)可分為400年的年份是閏年。例如,2000年不符合牙齒兩個(gè)條件的年份不是閏年,算法標(biāo)記如下:S1: 2000y year:如果年度不能除以4,則輸出年度值和“不是閏年”。然后轉(zhuǎn)至S6 S3。如果年份可以被4整除,不能被100整除,則輸出年份值和閏年。然后轉(zhuǎn)至S6 S4。如果年度可除以400,則輸出年度值和閏年這兩個(gè)值。然后移至S6 S5:如果不是年度值和閏年,則移至S6:年度1年度S7:年度250
5、0,閏年,年度除以100。除以400。閏年、閏年、其他、非閏年、判斷范圍逐漸縮小。范例2.4規(guī)則:1項(xiàng)目的分子分母都是1號(hào)2項(xiàng)目的分母是2,后續(xù)每個(gè)項(xiàng)目的分母都是1點(diǎn)2項(xiàng)目之前的運(yùn)算子是-,范例2.4 S1:sign=1 S2:sum=1 S3:deno=2 S4:sign 示例2.4查找S1: sign=1,否則返回算法結(jié)束,sign當(dāng)前符號(hào)term當(dāng)前項(xiàng)目的值sum當(dāng)前項(xiàng)目的總和和deno當(dāng)前項(xiàng)目的分母,1,1/3,1-1/2 1/3,4,滿意,S4,示例2.4 否則,算法關(guān)閉,循環(huán)99次后,sum的值是請(qǐng)求的結(jié)果。范例2.5提供大于或等于3的正整數(shù),以判斷是否為小數(shù)。所謂小數(shù)(prime
6、)是除了1和它本身以外,不能被任何整數(shù)整除的數(shù)字。例如,13是小數(shù)。因?yàn)椴荒鼙?,3,4,12整除。確定數(shù)字n(n3)是否為牙齒小數(shù)。N為被除數(shù),從2到(n-1)的每個(gè)整數(shù)為除數(shù),如果不能全部除以,則N為小數(shù)S1。輸入n值。S2: I=2 (I作為除數(shù))S3:否則,執(zhí)行S5 S5:i 1i S6: in-1會(huì)傳回S3。否則,輸出n為小數(shù),結(jié)束??梢愿臑?、n/2,2.3算法功能。有效的算法之一必須具有以下特征:(1)貧窮。一個(gè)算法必須包含有限制的程序,不能是無(wú)限的。(2)確定性。算法內(nèi)的所有階段都是模糊不清的,模糊不清的,渡邊杏。2.3算法屬性,有效算法:(3)必須至少有0個(gè)輸入。輸入是指在執(zhí)
7、行算法時(shí)從外部獲取必要的信息。(4)有一個(gè)或多個(gè)輸出?!八惴ā钡哪康氖墙忾_,“解釋”是輸出。沒(méi)有輸出的算法沒(méi)有意義。(5)有效性。算法中的每個(gè)步驟都必須能夠有效地執(zhí)行,并且能夠得到確定的結(jié)果。,2.3算法功能,對(duì)于最終用戶來(lái)說(shuō),處理任何問(wèn)題都不需要設(shè)計(jì)自行算法和程序。您可以使用他人設(shè)計(jì)的現(xiàn)成算法和程序。根據(jù)已知的算法要求,只需進(jìn)行必要的輸入即可獲得輸出結(jié)果。3個(gè)輸入,黑盒,3個(gè)中的最大數(shù)目,3個(gè)數(shù)字的最大數(shù)目,2.4個(gè)顯示方法一般方法是自然語(yǔ)言現(xiàn)有流程圖結(jié)構(gòu)化流程圖偽代碼,2.4.1是算法顯示方法,2.4.1是自然語(yǔ)言,算法2.4.2是算法2.4.3的三種茄子基本結(jié)構(gòu)和改進(jìn)的流程圖2.4.4是
8、N-S流程圖, 歧義發(fā)生概率自然語(yǔ)言中包含分支和循環(huán)的算法說(shuō)明,不是很方便,除了簡(jiǎn)單的問(wèn)題外,一般不使用自然語(yǔ)言,2.4.2是流程圖,算法表示,流程圖稍微易于理解,開始和結(jié)束框,輸入輸出框,處理框,判斷框,流程線,連接點(diǎn),注釋框, 如果需要將12345最終結(jié)果輸出為:1t,輸出t,i5,開始,2i,t*it,i 1i,結(jié)束,N,Y,示例2.7示例2.2的算法流程圖,要求50名學(xué)生取得80分以上成績(jī)的學(xué)生學(xué)號(hào)和性出口。1i,i50,開始,I 1i,結(jié)束,N,Y,輸入ni,gi,1i,開始,gi80,輸出ni,gi,I 1i,i50,N,Y 22、N、Y、N、Y、Y、N、Y、N、示例2.9將示例2
9、.4中的算法圖顯示為流程圖。1 sum 2 deno 1 sign,(-1)* sign sign sign *(1/deno)term sum terms um deno 1 deno,n,y,示例2.10示例大于或等于2.5判斷小數(shù)3的正整數(shù)、N、Y、2i、n%ir、i 1i、Y、N以及以上幾個(gè)茄子示例,表明流程圖是顯示算法的更好工具。流程圖包含以下牙齒:(1)流程行(3),帶有表示此操作的框(2)箭頭。1.現(xiàn)有流程圖的缺點(diǎn)現(xiàn)有流程圖用流程線表示每個(gè)框的執(zhí)行順序,對(duì)使用流程線沒(méi)有嚴(yán)格限制的用戶可以不受限制地自由地在流程中漫游,因此很難理解算法邏輯。2.4.3歲茄子基本結(jié)構(gòu)和改進(jìn)的流程圖,2
10、.3茄子基本結(jié)構(gòu)(1)順序結(jié)構(gòu),a,a 2。三個(gè)茄子基本結(jié)構(gòu)(2)選擇結(jié)構(gòu),A、B、Y、N、A、Y、N、2.4.3歲茄子基本結(jié)構(gòu)和改進(jìn)的流程圖,2.3茄子基本結(jié)構(gòu)(3)循環(huán)結(jié)構(gòu)2。三個(gè)茄子基本結(jié)構(gòu)(3)循環(huán)結(jié)構(gòu)-類型循環(huán)結(jié)構(gòu),A,Y,N,Y,N,0 x,x 1x,輸出1,2,3,4,5,牙齒三個(gè)茄子基本結(jié)構(gòu)具有以下特征也就是說(shuō),對(duì)于每個(gè)箱子,必須有從入口到出口的路徑。(4)結(jié)構(gòu)內(nèi)沒(méi)有“死循環(huán)”,必須有從三個(gè)茄子基本結(jié)構(gòu)派生的結(jié)構(gòu)。A、N、Y、B,根據(jù)表達(dá)式P的值進(jìn)行選擇,A、B和B算法顯示為N-S圖。i5,1t為止,輸出t、2i、t*it、i 1i和示例2.12將示例2.2中的算法顯示為N-S
11、圖。在50名學(xué)生中取得高于80分的成績(jī)的學(xué)號(hào)和成績(jī)。i50,1t,1i,i 1i為止,i50,gi80,否,是,輸出ni,gi,示例2.13是2.3,用于確定閏年的算法n-;年度0不是零牙齒,年度 0將0、是、否、年度非閏年輸出、年度閏年輸出、年度閏年輸出、范例2.14將范例2.4中的算法圖片顯示為N-S圖片。Deno100,deno 1deno,輸出sum,1 sum,1 sign,2 deno,(-1) * sign sign,sign * (1/deno)為止,是2.10輸入n,r=0,是,否,0w,2i,n% IR,1w,結(jié)構(gòu)化算法在由一些基本結(jié)構(gòu)順序組成的基本結(jié)構(gòu)之間沒(méi)有向前或向后跳躍。過(guò)程的轉(zhuǎn)移是存在于一個(gè)基本結(jié)構(gòu)范圍內(nèi)的非結(jié)構(gòu)算法可以用相應(yīng)的結(jié)構(gòu)算法代替。其功能不變。如果算法不能分成多個(gè)基本結(jié)構(gòu),那就不一定是結(jié)構(gòu)化的算法。2.4.5用偽代碼表示算法,偽代碼用自然語(yǔ)言和計(jì)算機(jī)語(yǔ)言之間的字母和符號(hào)描述算法偽代碼書寫算法沒(méi)有固定而嚴(yán)格的語(yǔ)法規(guī)則??梢杂糜⒄Z(yǔ)或中英文混用。示例2.16 5!算法啟動(dòng)1t 2 I while i5 t * I t I 1 I print end(算法關(guān)閉),示例2.17 begin 1 sum 2 deno 1 sign while deno 100(-1)* sign sign sign sign算法設(shè)計(jì)的目的是為了實(shí)現(xiàn)算
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 調(diào)味品品評(píng)師安全宣教考核試卷含答案
- 汽車車身整形修復(fù)工操作管理評(píng)優(yōu)考核試卷含答案
- 衛(wèi)星通信機(jī)務(wù)員安全生產(chǎn)意識(shí)模擬考核試卷含答案
- 煤層氣排采集輸工安全理論考核試卷含答案
- 粉末冶金模具工QC管理知識(shí)考核試卷含答案
- 電鳴樂(lè)器調(diào)試工崗后能力考核試卷含答案
- 2025吉林長(zhǎng)春市南關(guān)區(qū)面向社會(huì)招聘產(chǎn)業(yè)緊缺人才65人備考題庫(kù)附答案
- 禮儀主持人操作安全考核試卷含答案
- 無(wú)線電監(jiān)測(cè)與設(shè)備運(yùn)維員崗前技能掌握考核試卷含答案
- 偏鎢酸銨制備工崗前生產(chǎn)安全意識(shí)考核試卷含答案
- 網(wǎng)約配送員培訓(xùn)
- 蒙古駕駛證考試題目及答案
- 引水隧洞非爆破施工方案
- 文書模板-生產(chǎn)環(huán)節(jié)的大氣、水體、固體以及噪聲排放污染等符合相關(guān)標(biāo)準(zhǔn)的情況說(shuō)明
- 2025年時(shí)事政治試題全年答案
- 財(cái)務(wù)共享服務(wù)2025年發(fā)展趨勢(shì)與挑戰(zhàn)研究報(bào)告
- (初級(jí))小紅書種草營(yíng)銷師認(rèn)證考試真題試題(附答案)
- 2026 年廣西普通高等教育專升本考試(含高職升本新大綱)數(shù)學(xué)第16套(含答案解析)
- 頭發(fā)白轉(zhuǎn)黑課件
- 周邊建筑物、原地下管網(wǎng)及市政設(shè)施專項(xiàng)保護(hù)方案
- 2024-2025學(xué)年貴州省畢節(jié)市七星關(guān)區(qū)七年級(jí)(上)期末數(shù)學(xué)試卷(含答案)
評(píng)論
0/150
提交評(píng)論