算法與程序設(shè)計(jì)基礎(chǔ)1_第1頁(yè)
算法與程序設(shè)計(jì)基礎(chǔ)1_第2頁(yè)
算法與程序設(shè)計(jì)基礎(chǔ)1_第3頁(yè)
算法與程序設(shè)計(jì)基礎(chǔ)1_第4頁(yè)
算法與程序設(shè)計(jì)基礎(chǔ)1_第5頁(yè)
已閱讀5頁(yè),還剩70頁(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)介

1、目錄01算法02表示方法 03流程圖04解析算法05學(xué)會(huì)選擇基礎(chǔ)知識(shí)07枚舉算法06進(jìn)入循環(huán)算法回顧0810查找算法09排序算法01算法 算法是什么 ? 類似,但不單是解題步驟home在有限步驟內(nèi)求解某一問(wèn)題所使用的具有精確定義的一系列操作規(guī)則有窮性確定性可行性有0個(gè)或多個(gè)輸入有一個(gè)或多個(gè)輸出計(jì)算機(jī)學(xué)習(xí)是算法的學(xué)習(xí)例題4一個(gè)農(nóng)夫帶著一條狼、一只山羊和一籃蔬菜過(guò)河,但只有一條小船,并且每次只能讓農(nóng)夫帶一樣?xùn)|西過(guò)河。農(nóng)夫在場(chǎng)的情況下一切相安無(wú)事,一旦農(nóng)夫不在,狼會(huì)吃羊,羊會(huì)吃蔬菜。問(wèn)聰明的農(nóng)夫如何解決過(guò)河問(wèn)題。農(nóng)夫運(yùn)羊過(guò)去,空船回來(lái)例題2若在某個(gè)傾角為的斜面上,有一個(gè)質(zhì)量為m的物體正勻速下滑,問(wèn)該

2、斜面的滑動(dòng)摩擦系數(shù)為?農(nóng)夫運(yùn)狼過(guò)去,帶羊回來(lái)農(nóng)夫運(yùn)菜過(guò)去,空船回來(lái)農(nóng)夫運(yùn)羊過(guò)去Mission StartMission Complete例題1計(jì)算 15+4(5-2) 的值01算法home計(jì)算機(jī)學(xué)習(xí)是算法的學(xué)習(xí)用計(jì)算機(jī)解決問(wèn)題的一般過(guò)程:分析問(wèn)題;設(shè)計(jì)算法;編寫(xiě)程序;上機(jī)調(diào)試和維護(hù)。設(shè)計(jì)算法的基本步驟: 分析輸入數(shù)據(jù)(已知條件) 分析處理過(guò)程(推算過(guò)程) 分析輸出數(shù)據(jù)(待求結(jié)果)02表示方法如果讓你設(shè)計(jì)除法的算法,請(qǐng)問(wèn)你會(huì)如何表示?homehome1輸入整數(shù) a2輸入整數(shù) b3如果 b=0 轉(zhuǎn)到 74計(jì)算 c=a/b5輸出 c6轉(zhuǎn)到 87輸出“除數(shù)不能為零”8結(jié)束read aread bIf

3、b 0 c a / b; print cElse print 除數(shù)不能為零開(kāi)始c=a/b輸入整數(shù) ab0輸入整數(shù) b結(jié)束輸出“除數(shù)不能為零”輸出 cYN自然語(yǔ)言流程圖偽代碼home02表示方法 03流程圖home流程圖是一種比較直觀易懂的、用圖形來(lái)描述算法流程圖是一種比較直觀易懂的、用圖形來(lái)描述算法的方法。的方法。流程圖有兩種模式:框圖和結(jié)構(gòu)化流程圖。我們只流程圖有兩種模式:框圖和結(jié)構(gòu)化流程圖。我們只學(xué)學(xué)框圖框圖。3 3處理框處理框:有一個(gè)入口,一個(gè)出口。:有一個(gè)入口,一個(gè)出口。1 1開(kāi)始、結(jié)束符開(kāi)始、結(jié)束符2 2輸入、輸出框輸入、輸出框5 5流程線流程線4 4判斷框判斷框:有一個(gè)入口,至少兩

4、個(gè)出口。有一個(gè)入口,至少兩個(gè)出口。6 6連接框連接框開(kāi)始c=a/b輸入被除數(shù) ab0輸入除數(shù) b結(jié)束輸出“除數(shù)不能為零”輸出商cY YN N殊途同歸面臨艱難的抉擇直斜home實(shí)戰(zhàn)訓(xùn)練某學(xué)校需購(gòu)買n套學(xué)生課桌椅,已知每套單價(jià)200元,另加總價(jià)的3.5%的送貨費(fèi),請(qǐng)計(jì)算學(xué)校應(yīng)付款是多少?請(qǐng)畫(huà)出流程圖。分析問(wèn)題:已知條件:所需要的數(shù)據(jù)單價(jià),從鍵盤輸入的套數(shù)n。推算過(guò)程:計(jì)算應(yīng)付款,應(yīng)付款= 總價(jià)+總價(jià)*0.035,總價(jià)=單價(jià)*套數(shù) ;待求結(jié)果:應(yīng)付款。(單價(jià)用變量j表示,套數(shù)用n表示,總價(jià)用m表示,應(yīng)付款用p表示)單價(jià)單價(jià)=200總價(jià)總價(jià)=單價(jià)單價(jià)*套數(shù)套數(shù)應(yīng)付款應(yīng)付款= 總價(jià)總價(jià)+總價(jià)總價(jià)*0.0

5、35基礎(chǔ)知識(shí)home常量 與 變量定義:定義:常量常量:指在程序執(zhí)行過(guò)程中事先設(shè)置、其:指在程序執(zhí)行過(guò)程中事先設(shè)置、其值不發(fā)值不發(fā)生改變的量生改變的量,即一個(gè)具體的數(shù)值,即一個(gè)具體的數(shù)值。變量變量:指程序在運(yùn)行過(guò)程中:指程序在運(yùn)行過(guò)程中值可以發(fā)生變化的量值可以發(fā)生變化的量。變量變量的作用和本質(zhì):的作用和本質(zhì):變量用來(lái)變量用來(lái)存放存放程序運(yùn)行過(guò)程中用到的程序運(yùn)行過(guò)程中用到的數(shù)據(jù)數(shù)據(jù),其本質(zhì)是計(jì)算機(jī)其本質(zhì)是計(jì)算機(jī)內(nèi)存內(nèi)存中命名的中命名的存儲(chǔ)單元存儲(chǔ)單元。 定義變量的規(guī)則:定義變量的規(guī)則:只能由字母、數(shù)字和下劃線三類字符組成,但第一個(gè)字符必須只能由字母、數(shù)字和下劃線三類字符組成,但第一個(gè)字符必須是字

6、母。字母大小寫(xiě)都可以,變量名長(zhǎng)度適當(dāng)。是字母。字母大小寫(xiě)都可以,變量名長(zhǎng)度適當(dāng)。變量名應(yīng)取得便于理解,可以變量名應(yīng)取得便于理解,可以“顧名思義顧名思義”。變量賦值和使用:變量賦值和使用:變量要變量要 先賦值后使用先賦值后使用變量賦值的格式:變量賦值的格式:變量變量常量常量 或變量或變量變量變量變量變量= =常量常量 或變量或變量= =變量變量Private Sub Command1_Click() Dim a As Integer Dim b As Integer Dim c As Integer a = InputBox(請(qǐng)輸入數(shù)據(jù)a) b = InputBox(請(qǐng)輸入數(shù)據(jù)b) c = a

7、/ b Print cEnd Sub練一練:判斷下列變量名是否正確。a,c1,class*1, sum,3f,grade、aa , data, a/a。home實(shí)戰(zhàn)訓(xùn)練某物體做勻加速直線運(yùn)動(dòng),如何在已知初速度和加速度的情況下獲知其某個(gè)確定時(shí)刻的運(yùn)動(dòng)狀態(tài)(求出總位移和瞬時(shí)速度)。分析問(wèn)題:輸入(已知條件):初速度V0 ,加速度a ,時(shí)刻t。處理(推算過(guò)程):Vt=V0+at,S=(V0+Vt)/2 t輸出(待求結(jié)果):總位移S和瞬時(shí)速度Vt。設(shè)計(jì)算法的基本步驟:輸入處理輸出 03流程圖home流程圖是一種比較直觀易懂的、用圖形來(lái)描述算法流程圖是一種比較直觀易懂的、用圖形來(lái)描述算法的方法。的方法。

8、流程圖有兩種模式:框圖和結(jié)構(gòu)化流程圖。我們只流程圖有兩種模式:框圖和結(jié)構(gòu)化流程圖。我們只學(xué)學(xué)框圖框圖。3 3處理框處理框:有一個(gè)入口,一個(gè)出口。:有一個(gè)入口,一個(gè)出口。1 1開(kāi)始、結(jié)束符開(kāi)始、結(jié)束符2 2輸入、輸出框輸入、輸出框5 5流程線流程線4 4判斷框判斷框:有一個(gè)入口,至少兩個(gè)出口。有一個(gè)入口,至少兩個(gè)出口。6 6連接框連接框開(kāi)始c=a/b輸入被除數(shù) ab0輸入除數(shù) b結(jié)束輸出“除數(shù)不能為零”輸出商cY YN N基礎(chǔ)知識(shí)home常量 與 變量定義:定義:常量常量:指在程序執(zhí)行過(guò)程中事先設(shè)置、其:指在程序執(zhí)行過(guò)程中事先設(shè)置、其值不發(fā)值不發(fā)生改變的量生改變的量,即一個(gè)具體的數(shù)值,即一個(gè)具體

9、的數(shù)值。變量變量:指程序在運(yùn)行過(guò)程中:指程序在運(yùn)行過(guò)程中值可以發(fā)生變化的量值可以發(fā)生變化的量。變量變量的作用和本質(zhì):的作用和本質(zhì):變量用來(lái)變量用來(lái)存放存放程序運(yùn)行過(guò)程中用到的程序運(yùn)行過(guò)程中用到的數(shù)據(jù)數(shù)據(jù),其本質(zhì)是計(jì)算機(jī)其本質(zhì)是計(jì)算機(jī)內(nèi)存內(nèi)存中命名的中命名的存儲(chǔ)單元存儲(chǔ)單元。 定義變量的規(guī)則:定義變量的規(guī)則:只能由字母、數(shù)字和下劃線三類字符組成,但第一個(gè)字符必須只能由字母、數(shù)字和下劃線三類字符組成,但第一個(gè)字符必須是字母。字母大小寫(xiě)都可以,變量名長(zhǎng)度適當(dāng)。是字母。字母大小寫(xiě)都可以,變量名長(zhǎng)度適當(dāng)。變量名應(yīng)取得便于理解,可以變量名應(yīng)取得便于理解,可以“顧名思義顧名思義”。變量賦值和使用:變量賦值和

10、使用:變量要變量要 先賦值后使用先賦值后使用變量賦值的格式:變量賦值的格式:變量變量常量常量 或變量或變量變量變量變量變量= =常量常量 或變量或變量= =變量變量解析算法04解析算法用解析的方法找出表示問(wèn)題的前提條件與結(jié)果之間關(guān)系的數(shù)學(xué)表達(dá)式,并通過(guò)表達(dá)式的計(jì)算來(lái)實(shí)現(xiàn)問(wèn)題求解。有什么?求什么?怎么求?已知條件待求問(wèn)題數(shù)學(xué)關(guān)系輸入輸出處理home兩個(gè)電阻并聯(lián)求總阻值04解析算法一元二次方程求解多個(gè)并聯(lián)電阻求總阻值home兩個(gè)電阻并聯(lián)求總阻值R=1/R1+1/R2R=1/R已知條件計(jì)算公式求解問(wèn)題輸入R1、R2輸出R輸入處理輸出R1、R21/R=1/R1+1/R2R04解析算法home實(shí)戰(zhàn)訓(xùn)練鍵

11、盤輸入一個(gè)正方形的邊長(zhǎng)a,求該正方形與其內(nèi)切圓所夾部分的面積并輸出。(以3.14算)分析問(wèn)題:輸入什么數(shù)據(jù)?(正方形邊長(zhǎng)a)處理什么問(wèn)題?(計(jì)算正方形與其內(nèi)切圓所夾部分面積)輸出什么數(shù)據(jù)?(所求得的面積)基礎(chǔ)知識(shí)home運(yùn)算符與表達(dá)式運(yùn)算符及運(yùn)算次序:運(yùn)算符及運(yùn)算次序:算術(shù)運(yùn)算符算術(shù)運(yùn)算符 、- -、* * / / 、 、ModMod、+ +、- -。關(guān)系運(yùn)算符關(guān)系運(yùn)算符 、 =、=、= =、。邏輯運(yùn)算符邏輯運(yùn)算符 notnot、andand、oror。字符運(yùn)算符字符運(yùn)算符 & &或或| |。算術(shù)運(yùn)算最優(yōu)先,關(guān)系運(yùn)算次之,最后為邏輯運(yùn)算,括號(hào)可以算術(shù)運(yùn)算最優(yōu)先,關(guān)系運(yùn)算次之,最后為邏輯運(yùn)算,括

12、號(hào)可以改變次序。改變次序。練一練:寫(xiě)出變量a,b,c的最終值。(1)a=2 b=a+a c=a+b 練一練:寫(xiě)出變量a的最終值。(2)a=3 a=a Mod 2 練一練:寫(xiě)出變量a,b的最終值。(3)a=2 b=3 b=a+b b=a-b*2 a=-a-b 練一練:寫(xiě)出變量a,b,c,d的最終值。(4)a=10 b=3 c=(a Mod a)b d=a Mod ab練一練:判斷下列關(guān)系表達(dá)式結(jié)果是true或false。(1)303(2)123 and 123 or 12=5 abcda=22 b=3 3 b=a+b 5 b=a-b -3 a=a-b5 基礎(chǔ)知識(shí)home運(yùn)算符與表達(dá)式表達(dá)式:表達(dá)

13、式:指用運(yùn)算符將常量、變量連接起來(lái)有意義的式子。指用運(yùn)算符將常量、變量連接起來(lái)有意義的式子。表達(dá)式的類型:表達(dá)式的類型:算術(shù)表達(dá)式算術(shù)表達(dá)式; ;字符表達(dá)式字符表達(dá)式; ;關(guān)系表達(dá)式關(guān)系表達(dá)式; ;邏輯表達(dá)式邏輯表達(dá)式運(yùn)算次序運(yùn)算次序: :算術(shù)運(yùn)算最優(yōu)先,關(guān)系運(yùn)算次之,最后為邏輯運(yùn)算,括號(hào)可以算術(shù)運(yùn)算最優(yōu)先,關(guān)系運(yùn)算次之,最后為邏輯運(yùn)算,括號(hào)可以改變次序。改變次序?;A(chǔ)知識(shí)home實(shí)戰(zhàn)訓(xùn)練將下列描述用賦值語(yǔ)句表示。(1)設(shè)圓的半徑存放在變量r中,將圓周長(zhǎng)賦值給變量c,面積賦值給變量s。(2)假設(shè)一元二次方程的系數(shù)存放在變量a,b,c,將判別式賦給變量d。(3)某商店一商品價(jià)格存放在變量pric

14、e中,將price打?qū)φ?,賦值給變量price。(4)將國(guó)民生成總值gnp翻2翻。 基礎(chǔ)知識(shí)home實(shí)戰(zhàn)訓(xùn)練寫(xiě)出變量a,b,c,d的值(a、b、c、d皆為整型)。a=45b=13c=abb=b mod cd=b*2-1c=3*b*c基礎(chǔ)知識(shí)home前言回顧算法的特點(diǎn)和基本步驟算法的特點(diǎn)和基本步驟算法的表達(dá)方式算法的表達(dá)方式常量與變量常量與變量運(yùn)算運(yùn)算符與表達(dá)式符與表達(dá)式實(shí)戰(zhàn)訓(xùn)練輸入任意一個(gè)三位正整數(shù)n,輸出這個(gè)三位數(shù)各位數(shù)字之和total。例如:輸入456,輸出結(jié)果為15。分析問(wèn)題:輸入什么數(shù)據(jù)?(三位正整數(shù)n)處理什么問(wèn)題?(分別求出各位數(shù)字,并計(jì)算它們的和total)輸出什么數(shù)據(jù)?(所求得

15、的和total)思考:若輸入任意一個(gè)三位正整數(shù),將它們反向輸出應(yīng)該怎樣做?例輸入456,輸出654。home學(xué)會(huì)選擇05實(shí)戰(zhàn)訓(xùn)練問(wèn)題:?jiǎn)栴}:怎樣在輸入兩個(gè)數(shù)中找出其中較大的數(shù)并輸出?分析問(wèn)題:分析問(wèn)題:輸入什么數(shù)據(jù)?處理什么問(wèn)題?輸出什么數(shù)據(jù)?NEXT實(shí)戰(zhàn)訓(xùn)練問(wèn)題:?jiǎn)栴}:怎樣在輸入一個(gè)數(shù)到變量a后,輸出它的絕對(duì)值(不用絕對(duì)值函數(shù))。分析問(wèn)題:分析問(wèn)題:輸入什么數(shù)據(jù)?處理什么問(wèn)題?輸出什么數(shù)據(jù)?學(xué)會(huì)選擇05NEXT實(shí)戰(zhàn)訓(xùn)練問(wèn)題:?jiǎn)栴}:怎樣在輸入兩個(gè)不相等的數(shù)a,b后比較大小,將大數(shù)放在a中,小數(shù)放在b中,然后輸出a,b。分析問(wèn)題:分析問(wèn)題:輸入什么數(shù)據(jù)?處理什么問(wèn)題?輸出什么數(shù)據(jù)?NEXT實(shí)戰(zhàn)訓(xùn)

16、練問(wèn)題:?jiǎn)栴}:請(qǐng)模擬地鐵自助購(gòu)票系統(tǒng)算法,其規(guī)則為:乘1-4 站 3元/位;5-9站 4元/位;9站以上5元/位;輸入人數(shù)person、站數(shù)n,輸出應(yīng)付款pay。 分析問(wèn)題:分析問(wèn)題:輸入什么數(shù)據(jù)?處理什么問(wèn)題?輸出什么數(shù)據(jù)?一元二次方程求解04解析算法a x2 + b x + c = 0系數(shù)a、b、cd=b2-4ac無(wú)實(shí)解d0有一解有兩解home實(shí)戰(zhàn)訓(xùn)練若輸入值為900,則右側(cè)算法流程圖的輸出結(jié)果是?學(xué)會(huì)選擇05實(shí)戰(zhàn)訓(xùn)練問(wèn)題:?jiǎn)栴}:怎樣在分別輸入三個(gè)數(shù)a,b,c 后,找出其中最大的數(shù)并輸出?分析問(wèn)題:分析問(wèn)題:輸入什么數(shù)據(jù)?處理什么問(wèn)題?輸出什么數(shù)據(jù)?bc生活中的算法順序結(jié)構(gòu)分支結(jié)構(gòu)循環(huán)結(jié)構(gòu)

17、試試循環(huán)右側(cè)流程圖中哪些屬于循環(huán)結(jié)構(gòu)?實(shí)戰(zhàn)訓(xùn)練多個(gè)并聯(lián)電阻求總阻值1/R兩電阻并聯(lián)=1/R1+1/R21/R三電阻并聯(lián)=1/R1+1/R2+1/R31/R四電阻并聯(lián)=1/R1+1/R2+1/R3+1/R4R1/R1/RxR1/R1/RRR1/R1/RR加入第四個(gè)電阻加入第三個(gè)電阻試試循環(huán)加入第x個(gè)電阻試試循環(huán)問(wèn)題:?jiǎn)栴}:怎樣在你分別輸入幾個(gè)數(shù)(以輸入零表示結(jié)束)后,找出其中最大的數(shù)并輸出?分析問(wèn)題:分析問(wèn)題:輸入什么數(shù)據(jù)?處理什么問(wèn)題?輸出什么數(shù)據(jù)?試試循環(huán)實(shí)戰(zhàn)訓(xùn)練試試循環(huán)實(shí)戰(zhàn)訓(xùn)練若依次輸入13,27,22,13,15請(qǐng)問(wèn)右側(cè)算法流程圖的運(yùn)行結(jié)果是什么?s=s*xi累加累乘累減。i=0iid3

18、Bd2+d5=d7Cd2+5=d2+d5Dd2+3d409排序算法a1a2a3a4a5a6a7a843231534d1d2d3d4d5d6d7d8254128671NEXT實(shí)戰(zhàn)訓(xùn)練問(wèn)題:?jiǎn)栴}:Dim a(1 to 10) as integer, i as integerDim Temp as stringFor i=1 to 10 a(i)=Val(Inputbox(“請(qǐng)輸入數(shù)據(jù)”)Next iFor i=10 to 1 Step -1 Temp=Temp+str(a(i)Next IPrint Temp09排序算法NEXT今日作業(yè)1. 編寫(xiě)輸入編寫(xiě)輸入程序,依次輸程序,依次輸入入11個(gè)整數(shù),

19、個(gè)整數(shù),保存在數(shù)組保存在數(shù)組a(1 to 11)中并中并輸出輸出2. 編寫(xiě)序號(hào)編寫(xiě)序號(hào)查找程序,找查找程序,找出數(shù)組中的數(shù)出數(shù)組中的數(shù)并輸出并輸出3. 編寫(xiě)數(shù)值修編寫(xiě)數(shù)值修改程序,修改改程序,修改數(shù)組中的指定數(shù)組中的指定位數(shù)數(shù)據(jù)并輸位數(shù)數(shù)據(jù)并輸出新的和出新的和4. 編寫(xiě)反序程編寫(xiě)反序程序,將數(shù)組中序,將數(shù)組中的數(shù)反序輸出的數(shù)反序輸出home問(wèn)題:?jiǎn)栴}:l 已知三個(gè)數(shù)a、b、c,求三個(gè)數(shù)中的最大值。l 已知四個(gè)數(shù)a、b、c、d,求四個(gè)數(shù)中的最大值。l 已知n個(gè)數(shù),求n個(gè)數(shù)中的最大值。09排序算法home擂臺(tái)法(例1) 利用數(shù)組求集合23,56,83,52,100,88,78,25,34的最大值。

20、23568352100887825345283342356100887825a(1)a(2)a(3)a(4)a(5)a(6)a(7)a(8)a(9)排序算法home擂臺(tái)法排序算法home擂臺(tái)法排序2356835210088182534a(1)a(2)a(3)a(4)a(5)a(6)a(7)a(8)a(9)通式Step 1排序算法Step 2Step 3順序排序排序算法For j=1 to 8 For i=j+1 to 9 if a(i)a(j) then temp=a(j) a(j)=a(i) a(i)=temp end if Next iNext jStr1=“”For i=1 to 9 s

21、tr1=str1+str(a(i)Next iMsgbox(“該數(shù)組從小到大排列為該數(shù)組從小到大排列為”+str1)處理輸出觀看演示For j=1 to 8 For i=j+1 to 9 if a(i)a(j) then temp=a(j) a(i)=a(j) a(j)=temp end if Next iNext jhomeFor j=1 to 8 For i=9 to j+1 step -1 if a(i)a(i-1) then temp=a(i) a(i)=a(i-1) a(i-1)=temp end if Next iNext jstr1=“”For i=1 to 9 str1=str

22、1+str(a(i)Next iMsgbox(“該數(shù)組從小到大排列為該數(shù)組從小到大排列為”+str1)處理輸出冒泡排序排序算法現(xiàn)有一個(gè)數(shù)組現(xiàn)有一個(gè)數(shù)組ScoreScore(1 to 421 to 42),所有元素),所有元素都已賦值都已賦值1.1.寫(xiě)出使用順序排序法對(duì)該數(shù)組進(jìn)行排序的寫(xiě)出使用順序排序法對(duì)該數(shù)組進(jìn)行排序的處理算法處理算法2.2.寫(xiě)出使用冒泡排序法對(duì)該數(shù)組進(jìn)行排序的寫(xiě)出使用冒泡排序法對(duì)該數(shù)組進(jìn)行排序的處理算法處理算法3.3.如果要將排序后的數(shù)組元素通過(guò)如果要將排序后的數(shù)組元素通過(guò)MsgboxMsgbox方方式輸出,請(qǐng)寫(xiě)出輸出算法式輸出,請(qǐng)寫(xiě)出輸出算法(所需要使用的變量都定義在最前面

23、,重復(fù)變量(所需要使用的變量都定義在最前面,重復(fù)變量不需要定義)不需要定義)今日作業(yè)順序排序排序算法For j=1 to 8 For i=j+1 to 9 if a(i)a(j) then temp=a(j) a(j)=a(i) a(i)=temp end if Next iNext jStr1=“”For i=1 to 9 str1=str1+str(a(i)Next iMsgbox(“該數(shù)組從小到大排列為該數(shù)組從小到大排列為”+str1)處理輸出觀看演示For j=1 to 8 For i=j+1 to 9 if a(i)a(j) then temp=a(j) a(i)=a(j) a(j)

24、=temp end if Next iNext jhomeFor j=1 to 8 For i=9 to j+1 step -1 if a(i)a(i-1) then temp=a(i) a(i)=a(i-1) a(i-1)=temp end if Next iNext jstr1=“”For i=1 to 9 str1=str1+str(a(i)Next iMsgbox(“該數(shù)組從小到大排列為該數(shù)組從小到大排列為”+str1)處理輸出冒泡排序排序算法寫(xiě)出以下9個(gè)數(shù)從小到大做冒泡排序的前兩輪結(jié)果第一輪后第二輪后冒泡排序復(fù)習(xí)排序算法查找模擬2356835210088182534182356835

25、2100882534181818181818251825568352100883423252525252525home10查找算法home查找算法順序查找若數(shù)組d是一個(gè)元素下標(biāo)從1到10的數(shù)組Dim i as integer,c as integer,Key as integerc=0n=10Key=val(inputbox(“請(qǐng)輸入要查找的數(shù)值”)For i=1 to n c=c+1 If d(i)=key then Exit forNext iIf in then Msgbox(“要查找的數(shù)值在數(shù)組的第”+str(i)+”個(gè)位置,共進(jìn)行”+str(c)+”次比較”) Else Msgbox(“該數(shù)組中找不到這個(gè)數(shù)”) endif查找算法順序查找標(biāo)志法若數(shù)組d是一個(gè)元素下標(biāo)從1到10的數(shù)組Dim i as integer,c as integer, Key as integer,flag as booleanc=0n=10Key=val(inputbox(“請(qǐng)輸入要查找的數(shù)值”)For i=1 to n c=c+1 If d

溫馨提示

  • 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)論