流程图与选择结构.ppt_第1页
流程图与选择结构.ppt_第2页
流程图与选择结构.ppt_第3页
流程图与选择结构.ppt_第4页
流程图与选择结构.ppt_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

CHAPTER7流程圖與選擇結構,學習目標,讓讀者了解利用電腦處理問題的步驟流程圖的意義與用法程式的基本結構有那些?選擇結構有那些相關的敘述與函數?If-Then敘述的功能與用法If-Then-Else敘述的功能與用法巢式If敘述的用法Select敘述的功能與用法IIf、Choose與Switch函數的功能與用法MsgBox敘述與函數的功能與用法訊息方塊的產生與運用,7-1利用電腦處理問題的步驟一、瞭解問題:先瞭解問題的要求及條件,確定需要輸入的資料及輸出的結果。二、設計解題程序:研究分析解題方法,構思有效可行的處理程序,可以用流程圖(FlowChart)來表達所要處理的步驟。三、編寫程式:依程式語言的語法規則,將解題的程序轉寫成程式。四、上機執行:將程式自鍵盤輸入電腦執行。五、檢查結果:檢查輸出結果是否正確,如果不正確,再將錯誤的原因找出來,並加以更正。,7-2流程圖的意義流程圖是利用簡明、標準的圖形及線條,來描述程式的處理步驟。常用的流程圖有下列六種:1.開始或結束符號(起訖符號):表示流程圖的起點或終點,一個流程圖必須有起點及終點,而且只能有一個起點,但可以有一個以上的終點。【例1】:開始或結束符號,開始,結束,2.處理符號:表示一件工作的處理,可在內部列出計算公式或處理動作。【例2】:計算a=b+c處理符號3.輸入或輸出符號:由輸入設備輸入資料,或由輸出設備輸出資料。【例3】:輸入n值輸入或輸出符號【例4】:輸出n值,a=b+c,輸入n,輸出n,4.流向符號:表示程式進行的方向。,表示有一個條件要判斷,並根據其結果決定下一個執行步驟。菱形內註明待判斷的條件,通常有一個入口,二個或三個出口。【例7】,5.決策符號,6.迴圈符號:利用迴圈(Loop)敘述時使用。,流程圖是畫來給人看的,可作為自己或別人瞭解程式做法及處理步驟的一種參考文件。初學程式語言的人,在設計程式之前,最好先利用流程圖來規劃整個程式結構,訓練處理問題的邏輯思路,對於程式邏輯比較容易融會貫通。(可利用Word軟體中的【插入/圖片/快取圖案/流程圖】來製作流程圖),流程圖是畫來給人看的,可作為自己或別人瞭解程式做法及處理步驟的一種參考文件。初學程式語言的人,在設計程式之前,最好先利用流程圖來規劃整個程式結構,訓練處理問題的邏輯思路,對於程式邏輯比較容易融會貫通。(可利用Word軟體中的【插入/圖片/快取圖案/流程圖】來製作流程圖),7-3程式的基本結構一、循序結構:指多個敘述依序執行的方式。【例1】循序結構x=Inputbox(請輸入第一個數)y=Inputbox(請輸入第二個數)s=x+yPrint兩數的和=;s意義:依序執行四個敘述,二、選擇結構:根據某一條件是否成立,來選擇不同的執行路徑。此結構常用的有下列三種型式:1.If-Then結構【例2】假如xy就計算x-yIfxyThena=x-y意義:以xy為條件式,如果成立就執行a=x-y,2.If-Then-Else結構【例3】購買數量=10,售價打八折Ifq=10Thena=p*q*0.8Elsea=p*q意義:以q=l0為條件式,如果成立就執行a=p*q*0.8,否則(條件不成立)就執行a=p*q,3.SelectCase結構【例4】根據c值輸出剪刀、石頭或布SelectCasecCasela=剪刀Case2a=石頭Case3a=布EndSelect,意義:以c為條件式的比較對象,分別按c的內容而做下列的處理:c=la=剪刀,c=2a=石頭,c=3a=布,三、重覆結構:根據某一條件是否成立,來控制一段敘述的重覆執行,而造成迴圈(Loop)的運作。此結構常用的有下列三種型式:(將在第九章介紹)l.For-Next結構【例5】輸出1、3、5Fori=1To5Step2PrintiNexti意義:For與Next之間形成一個迴圈,其中的敘述Printi,依i=1、3、5共執行三次,即印出1、3及5。(此例之條件為i由1到5,每次增加2),2.Do-While結構【例6】輸出1、3、5i=1DoWhilei=5Printii=i+2Loop意義:以i=10Thenmoney=price*qty*0.8_Elsemoney=price*qty格式二:IF條件式Then敘述區段1Else敘述區段2EndIf,【說明】假如在Then或Else下面的敘述區段中,再使用If敘述,則稱為巢式If敘述(NestedIfStatement),如下:,【例3】根據分數(s),印出及格恭喜或不及格請多用功!Ifs60ThenPrint不及格Print請多用功!ElsePrint及格Print恭喜!EndIf,【例4】巢式If敘述的應用:根據分數的範圍,輸出文字如下:=90優等發獎狀一張!Ifs=60,及格,恭喜!,不及格,請多用功!),7-7SelectCase敘述,如果末加列CaseElse,而所有Case後的測試資料都不符合時,將會順著離開Select結構,而執行EndSelect下面的敘述。,【例1】SelectCase的應用01c=InputBox(請輸入代號13)02SelectCasec03Case104Print剪刀05Case206Print石頭07Case308Print布09CaseElse10Print代號錯誤!11EndSelect,Case測試資料的用法一、使用單一或多個常數:如果運算式的結果值等於其中一個常數,就算符合該Case的條件。如下:Case1CaseSUNCase1,2,3,4Case2,4,8,16,32,64CaseMON,TUE,WED,THU,FRICase台北,台中,高雄二、利用常數指定範圍:如果運算式的結果值在範圍之內,就算符合該Case的條件。如下:Case1To4運算式的結果值為14均符合條件CaseAToZ運算式的結果值為AZ的26個字母均符合條件,三、測試資料為關係運算式的型態:必須在Case後加列關鍵字Is,如果運算式的結果值符合該運算式之條件,就算符合該Case的條件。如下:CaseIs=60運算式的結果值60就符合條件CaseIsSUN運算式的結果值SUN就符合條件CaseIs=Y運算式的結果值為Y就符合條件四、將前述三種用法混合使用。如下:Case10To20,30,Is60運算式的結果值為1020,或等於30,或60,均符合條件。CaseAToD,I,J,Is=P運算式的結果值為AD,或I,或J,或PZ等字母均符合條件,【例2】輸入成績,再輸出如7-5節例4的文字。01SelectCasescore02CaseIs=60,及格,恭喜!,_s=60Ands=90,“優等,發獎狀一張!”)【討論】如果分數超出0100的範圍時,要輸出分數超出0100的範圍,要如何修改?,7-10MsgBox敘述與函數敘述:MsgBox訊息,格式碼,標題函數:MsgBox(訊息,格式碼,標題)1.兩者的用法一樣,只不過在函數中,參數列的前後要加上小括弧,而且會傳回值(可測知使用者按了那個鈕),使用敘述時不會傳回值。2.訊息:要提醒使用者注意的文字,如:密碼錯誤!。3.標題:要出現在對話方塊標題欄上的文字,若省略此參數,會以專案名稱為標題。4.格式碼:用來設定在方塊內要出現的圖示與按鈕,可用代碼或常數變數表示,其對照關係如表8-2。(若省略此參數,會自動設定為0)5.利用MsgBox函數出現對話方塊後,使用者按下方塊中的命令鈕時,會傳回一個數值(參看表8-3)供程式辨認,作為執行後續敘述的依據。,表8-2MsgBox常用的基本格式碼及其作用對照表,表8-2MsgBox常用的基本格式碼及其作用對照表,表8-2MsgBox常用的基本格式碼及其作用對照表,表7-2MsgBox函數傳回值與按下的命令鈕對照表,格式碼的用法,【例1】密碼(Password)檢查:假設密碼為“1234”,輸入密碼正確就輸出通過密碼檢查了!,不正確則輸出密碼錯誤!。01PrivateSubForm_Activate()02password=InputBox$(請輸入密碼,密碼檢查)03Ifpassword=1234Then04MsgBox通過密碼檢查了!,vbOKOnly+vbExclamation,恭喜!05Else06feedback=MsgBox(密碼錯誤!,vbYesNoCancel+vbCritical,抱歉!)07SelectCasefeedback08CasevbYes09MsgBox你按了是(Y)鈕,0,是10CasevbNoMsgBox你按了否(N)鈕,0,否“12CasevbCancel13MsgBox你按了取消鈕,0,取消14CaseElse15MsgBox不應有此情況16EndSelect17EndIf18EndSub,【執行情況】,第一次執行:,第二次執行,1.輸入,2.按此鈕,3.按此鈕,1.輸入,3.按此鈕,4.按此鈕,2.按此鈕,7-11應用實例【實例一】假設某出

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论