第2章 vb程序設計與算法(問題求解).ppt_第1頁
第2章 vb程序設計與算法(問題求解).ppt_第2頁
第2章 vb程序設計與算法(問題求解).ppt_第3頁
第2章 vb程序設計與算法(問題求解).ppt_第4頁
第2章 vb程序設計與算法(問題求解).ppt_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Visual Basic Programming 1,程序設計與算法(問題求解) 第2章,2.1 程序的基本組成:輸入、處理與輸出 2.2 算法與編程工具 Points to Remember,Visual Basic Programming 2,程序的基本組成:輸入、處理與輸出,計算機解題示例 程序設計的一般步驟,2.1,利用計算機解題,首先需要確定得到什么樣的“輸出”結果; 其次是確定為了成功地獲得相應的結果,需要提供的數(shù)據(jù),或者稱為“輸入”; 最后,就是需要確定如何“處理”輸入的數(shù)據(jù),才能獲得相應的“輸出”結果。,Visual Basic Programming 3,計算機解題示例,例如

2、,需要利用計算機求一個三角形的面積 首先,可以確定程序的輸出就是一個三角形的面積值。并確定面積單位。 接著,要確定求三角形面積所需輸入的數(shù)據(jù)。 已知三邊長度 已知相鄰兩邊長度以及相鄰邊的夾角 以上兩種方法選其一,確定數(shù)據(jù)的輸入類型以及單位 然后,確定如何處理輸入的數(shù)據(jù),即選擇并確定求解算法,編寫程序實現(xiàn)。 最后,全面詳細考慮周邊相關問題,使程序更加完善友好,如程序中是否需要檢查輸入數(shù)據(jù)的合法性等。 用戶輸入了非數(shù)值型數(shù)據(jù) 要構成三角形,必須保證輸入的三個邊長值中,任意兩個邊長值相加必須大于第三邊邊長 若用戶輸入了非標準單位數(shù)據(jù)是否提示或程序自動轉換,2.1,Visual Basic Progr

3、amming 4,當a+bc 且 a+cb 且 b+ca 時,三角形存在,其面積 式中: p=(a+b+c)/2,已知三角形三個邊的長度,設計求此三角形面積的程序,實例 程序代碼,2.1,Visual Basic Programming 5,計算機的處理步驟 可設a=3cm,b=4cm,c=5cm 輸入a、b、c的值,計算p=(3+4+5)/2=6cm 得到 計算機解題過程圖示,已知三角形三個邊的長度,設計求此三角形面積,2.1,Visual Basic Programming 6,程序設計的一般步驟,1.分析:問題定義 2.設計:計劃解題 3.選擇與創(chuàng)建界面:選擇和確定界面對象 4.編碼:用

4、程序設計語言描述算法 5.測試與調試:查找并排除程序中的任何錯誤 6.完成文檔:整理和組織描述程序的所有資料,2.1,Visual Basic Programming 7,算法與編程工具,被包含在窗體或標準模塊中的一個個過程有機地組合在一起,就構成一個完整的應用程序。 在設計程序前,根據(jù)實際問題的特點和需求,同時考慮到計算機的工作特性,確定解決該問題所需要的方法和步驟稱為“算法設計”。 算法的概念 算法示例 算法的特征 算法的描述 基本算法結構,2.2,Visual Basic Programming 8,算法的概念,廣義而言,算法就是解決某個問題或處理某件事的方法和步驟。 狹義而言,算法是專

5、指用計算機解決某一問題的方法和步驟。 計算機算法可以分為兩大類:一類是數(shù)值計算算法;另一類是非數(shù)值計算算法。 研究解決各種特定類型問題的算法已成為一個稱為“計算方法”的專門學科。 對于同一問題的求解,往往可以設計出多種不同的算法。一般而言,評價一個算法的好壞優(yōu)劣,主要看算法是否正確、運行的效率及占用系統(tǒng)資源的多少等。,Visual Basic Programming 9,算法示例,【例2-1】算法1 【例2-2】算法2,Visual Basic Programming 10,算法1 求兩個自然數(shù)的最大公約數(shù)的算法,S1.輸入兩個自然數(shù)M、N; S2.求M除以N的余數(shù)R; S3.使M=N,即用N

6、代換M; S4.使N=R,即用R代換N; S5.若R0,則重復執(zhí)行S2、S3、S4(循環(huán)),否則轉S6; S6.輸出M,M即為M和N的最大公約數(shù)。 本算法是由古希臘數(shù)學家歐幾里德提出的,所以又稱為“歐幾里德算法”。算法中的S1、S2、S3叫作算法步驟,每個算法步驟明確規(guī)定所要進行的操作及處理對象的特性(M、N為自然數(shù))。 歐幾里德算法是求兩個自然數(shù)最大公約數(shù)的經(jīng)典算法。 證明,Visual Basic Programming 11,算法2 在N個字符數(shù)據(jù)集合中,查找有無 特定的字符串存在,S1.輸入字符數(shù)據(jù)的個數(shù)N和要查找的數(shù)據(jù)S; S2.使I=1,I用于計數(shù); S3.從字符數(shù)據(jù)集合中讀取第I

7、個數(shù)據(jù)X; S4.若X=S,輸出“找到S”的信息,算法結束,否則轉S5; S5.使I=I+1,計數(shù)器計數(shù); S6.若IN;則重復執(zhí)行S3、S4、S5(循環(huán));否則轉S7; S7.輸出“找不到S”信息,算法結束。 本算法也稱為“順序查找算法”,也是在處理非數(shù)值信息時最常用的一種算法。,Visual Basic Programming 12,算法的特征,從上述算法的示例可以看出,作為算法,應具備以下特征: 1)確定性-算法的每個步驟都應確切無誤,沒有歧義性。 2)可行性-算法的每個步驟都必須是計算機能夠有效執(zhí)行、可以實現(xiàn)的,并可得到確定的結果。 3)有窮性-一個算法包含的步驟必須是有限的,并在一個

8、合理的時間限度內可以執(zhí)行完畢。 4)輸入性-執(zhí)行算法時可以有多個輸入,但也可以沒有輸入(0個輸入)。 5)輸出性-一個算法必須有1個或多個輸出。,Visual Basic Programming 13,算法的描述,算法可以采用多種方式來表示。比如使用人們的自然語言像英語、漢語等來描述;使用某種代碼符號來描述或者使用特定的圖形來描述等等。由于圖形的描述方法既形象,又直觀,所以得到廣泛的應用。 用于描述算法的圖形使用較多的是所謂的流程框圖,簡稱流程圖。它是使用規(guī)定的圖形符號來描述算法的。流程圖使用的圖形符號見表2-1。 圖2-2和圖2-3分別是上一節(jié)兩個算法示例的流程圖。圖框內的文字用于說明具體的操作內容。顯而易見,使用流程圖比使用自然語言描述算法優(yōu)越地多。,Visual Basic Programming 14,表2-1,Visual Basic Programming 15,N,M,Visual Basic Programming 16,基本算法結構,“結構化程序設計方法”的核心是規(guī)定了算法的三種基本結構:順序結構、分支結構和循環(huán)結構。,Visual Basic Programming 17,順序結構,Visual Basic Programming 18,分支結構,Visual Ba

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論