下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、1算法:為解決某一問題設計的確定的有限的步驟。2算法的主要特征:有窮性、確定性、可行性、有0個或多個輸入、有一個或多個輸入。3算法的描述方法:自然語言,流程圖,程序或位代碼。4.用計算機解決問題的一般過程:分析問題®設計算法®編寫程序®上機調試和維護5流程圖符號:起止框 輸入輸出框 處理框 判斷框 流程線6常量:在程序執(zhí)行過程中事先設置、其值不發(fā)生改變的量。7變量:在程序執(zhí)行過程中,取值可以改變的量,對應計算機內部的存儲單元。(1)每個變量都有一個名字作為標記,不同程序設計語言對變量的命名規(guī)則各不相同?;久?guī)則:只能由字母、數(shù)字和下劃線三類字符組成,但第一個字
2、符必須是字母,字母大小寫都可以。變量名長度適當,要有意義。(2)從變量中讀取數(shù)據(jù)后,變量的值不發(fā)生改變。(3)變量賦值:將賦值號右邊常量的值或變量的值,或表達式的結果存放在左邊變量名對應的存儲單元中,成為左邊變量的值。例:(注意“=”是賦值號)n 變量=常量 例如:a=3n 變量=變量 例如:b=an
3、; 變量=表達式 例如:c=2*a+b (4)變量賦值的特點:取之不盡,賦值即覆蓋(5)變量的定義:Dim <變量名1> As <類型名> ,<變量名2> As <類型名>類型名中文名取值范圍Single單精度實數(shù)10-451038Integer整數(shù)-3276832767String字符串一段文字與符號例:name=“Liming” 8運算符類別運算符運算結果優(yōu)先級算術運算符+ 、-、* 、/、mod數(shù)值>* />&g
4、t;mod>+ -關系運算符>、<、>=、<=、=、<>True或False相同邏輯運算符not、and、orTrue或FalseNot>and>or9三類運算符的優(yōu)先級:算術運算符>關系運算符>邏輯運算符10. 常用數(shù)學函數(shù):Int(x) 取整運算,求不大于x的最大整數(shù)Sqr(x) 求x的算術平方根Abs(x) 求x的絕對值11主要函數(shù):取整函數(shù)Int()、求算術平方根函數(shù)sqr()、求絕對值函數(shù)abs()12算法的三種結構:順序結構、分支結構、循環(huán)結構。順序結構雙分支結構單分支結構當型循環(huán)結構直到型循環(huán)結構順序結構13.判斷
5、框一個入口、兩個出口;分支結構一個入口、一個出口。14循環(huán)結構中要注意:循環(huán)初始狀態(tài)、循環(huán)體、循環(huán)條件。15計數(shù)器:在算法執(zhí)行過程中,用來記錄某種事件發(fā)生次數(shù)的變量。(1)計數(shù)器的初值通常為0(2)在循環(huán)體中的計數(shù)語句i = i + 116. 累加器:在算法執(zhí)行過程中,用來生成并存儲數(shù)據(jù)累加和的變量。(1)累加器的初值通常為0(2)在循環(huán)體中的累加語句s = s + a17累乘器:在算法執(zhí)行過程中,用來生成并存儲數(shù)據(jù)累乘積的變量。(1)累乘器的初值通常為1(2)在循環(huán)體中的累乘語句s = s * a18解析算法:用解析的方法找出表示問題的前提條件與結果之間關系的數(shù)學表達式,并通過表達式的計算來
6、實現(xiàn)問題求解。【解析算法實例】輸入已知三角形三條邊的長a、b、c,利用海倫公式求三角形面積。input a, b, c s = (a + b + c) / 2 x = Sqr(s * (s - a) * (s - b) * (s - c) Print x19枚舉算法:列出各種可能的情況并逐一進行檢驗,根據(jù)檢驗的結果執(zhí)行相應的操作?!懊丁本褪且粋€一個;“舉”就是列舉。核心:不遺漏不重復。枚舉算法充分利用了計算機“運行速度快、不知疲倦”的優(yōu)勢。(1)結構特點:循環(huán)中嵌套分支結構l列舉由循環(huán)結構實現(xiàn)l檢驗由分支結構實現(xiàn)(2)設計步驟1)確定列舉的范圍:不能隨意擴大和縮小范圍,否則會造成重復或漏解2)
7、明確檢驗的條件:根據(jù)檢驗的對象來設定條件,以及檢驗后所執(zhí)行的相關操作。3)確定循環(huán)控制的方式和列舉的方式:借助循環(huán)變量的變化來列舉,或通過輸入。 x = 100 Do While x <= 999 a = Int(x / 100) b = Int(x Mod 100) / 10) c = x Mod 10 If a 3 + b 3 + c 3 = x Then Print x , End If x = x + 1Loop【枚舉算法實例】若一個三位數(shù)x=100*a+10*b+c(a、b、c都是個位數(shù)),滿足a3+b3+c3=x,則x稱為水仙花數(shù)。找出三位數(shù)中所有的水仙花數(shù)。20數(shù)組:一種特
8、殊的變量,在內存中的位置是連續(xù)的,用于存儲一批類型、作用相同的數(shù)據(jù)。幾個相關概念:數(shù)組名、數(shù)組元素、數(shù)組元素名、數(shù)組元素下標、數(shù)組元素值。Dim d(10) For i = 1 to 10 Input a d(i) = a next i for i = 10 to 1 step -1 Print d(i) Next i【數(shù)組實例】輸入10個數(shù)字,依次存放到數(shù)組中,再將其逆序輸出。21冒泡排序的算法思想(由右向左依次比較,這種考的比較多)(1)從最下面一個元素起,自下而上地比較相鄰兩個元素中的數(shù)據(jù),將較小的數(shù)值交換到上面一個元素。重復這一過程,直到處理完最后兩個元素中的數(shù)據(jù),稱為一遍加工。此時,
9、最小的數(shù)據(jù)已經(jīng)上升到第一個元素的位置。(2)然后對余下的i-1個元素重復上述過程。(3)由于每一遍加工都是將最小的元素像氣泡一樣浮至頂端,故稱為冒泡排序。例:有一組數(shù)據(jù)23、61、24、15、89,問第二輪冒泡的第一次交換后數(shù)據(jù)排序的結果如何?冒泡過程:原始數(shù)據(jù)2361241589第一輪冒泡(交換3次)1589152489156124891523612489第二輪冒泡(第1次交換)2489246189答:第二輪冒泡的第一次交換后數(shù)據(jù)排序結果為15、23、24、61、8922選擇排序的算法思想(找最值擂臺法)(1)從第一個元素起,自上而下找出最小數(shù),并記錄下它的位置,將最小數(shù)交換到第一個元素中。
10、完成第一遍加工。(2)然后對余下的i-1個元素重復上述過程。(3)在每一遍加工中,只需交換一次位置即可上例中的這組數(shù)據(jù)23、61、24、15、89,用選擇排序的過程如下:原始數(shù)據(jù)2361241589第一遍加工1561242389第二遍加工1523246189冒泡排序與選擇排序的比較選擇排序實際上是一種優(yōu)化了的排序方法,它和冒泡排序的區(qū)別在于減少了交換的次數(shù),在每一遍的加工過程中,選擇排序采用的方法是通過遍歷,記錄下最值的位置,最后再將最值所在位置的數(shù)據(jù)與待排元素所在的位置進行交換,因此每一遍加工只需交換依次位置。大大減少了算法的復雜度。23擂臺法實例:已知數(shù)組d中已經(jīng)存放了10個數(shù),輸出其中的最大值(1)先假設d1中的數(shù)值是最大值,令k d1 。(2)用d2與k比較,若d2大,則令k d2,否則繼續(xù)比較,直至d1024順序查找的算法思想:按照數(shù)組元素的先后次序,從第一個元素開始遍歷,逐個檢驗是否和查找的數(shù)據(jù)相等。(枚舉算法)例:在包含10個數(shù)字的數(shù)組中順序查找一個符合要求的數(shù)。25對分查找的算法思想:先取數(shù)組中間的元素和關鍵字比較,若不相等則縮小近一半的查找范圍,在剩下的元素中繼續(xù)查找。由于對分查找每查找一次,查找范圍
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 萬能補充協(xié)議
- 足底發(fā)麻病因介紹
- (2024)高速吹膜機項目可行性研究報告?zhèn)浒干暾埬0?一)
- 云南省曲靖市沾益區(qū)2024-2025學年七年級9月月考道德與法治試題(原卷版)-A4
- 2024秋新滬科版物理8年級上冊教學課件 第6章 熟悉而陌生的力 第4節(jié) 探究:滑動摩擦力大小與哪里因素有關
- 2023年智能電能表及配件項目融資計劃書
- 2023年原料藥機械及設備項目融資計劃書
- 《OJT推進與實施》課件
- 《珠心算基本功訓練》課件
- 湖北省黃石市大冶市2023-2024學年七年級上學期期末考試數(shù)學試卷(含答案)
- 護理質控分析整改措施(共5篇)
- 金屬礦山安全教育課件
- 托盤演示教學課件
- 中華農耕文化及現(xiàn)實意義
- DBJ61-T 112-2021 高延性混凝土應用技術規(guī)程-(高清版)
- 2023年高考數(shù)學求定義域專題練習(附答案)
- 農產(chǎn)品品牌與營銷課件
- 蘇科版一年級心理健康教育第17節(jié)《生命更美好》教案(定稿)
- 車輛二級維護檢測單參考模板范本
- 測定總固體原始記錄
- (最新整理)夜市一條街建設方案
評論
0/150
提交評論