1、臺北市立大同高中臺北市立大同高中蔡志敏老師蔡志敏老師程式流程控制程式流程控制-以以ATM操作為例操作為例操作為例操作為例 流程圖(Flowchart)是將解決問題的順序、步驟,用特定的圖形、符號表達出來,一圖勝過千言萬語,看圖會意往往能收事半功倍之效。流程圖為了方便流通閱讀,其符號是固定而統一的,因為每個符號都有其特殊意義,所以看流程圖時容易一目了然。第2頁程式流程控制程式流程控制-以以ATM操作為例操作為例操作為例操作為例 文件流程圖 用以表示整個系統的文件流程 資料流程圖 用以表示整個系統的資料流程 系統流程圖 用以表示實際資源控制的流程 程式流程圖 用以表示系統內程式控制的流程 本單元以
2、介紹程式流程圖為主第3頁程式流程控制程式流程控制-以以ATM操作為例操作為例操作為例操作為例 優點 容易了解整個作業流程。使程式除錯容易進行。方便別人了解程式流程,有利程式移交。有助於程式的修改與維護。缺點 複雜系統的流程圖繪製不易。複雜的流程圖不易閱讀。第4頁程式流程控制程式流程控制-以以ATM操作為例操作為例操作為例操作為例 Open office的文書處理軟體、試算表軟體、簡報軟體等 MS office的文書處理軟體、試算表軟體、簡報軟體等 免費繪製軟體Dia 免費線上繪製流程圖 http:/ MS 的Visio軟體第5頁程式流程控制程式流程控制-以以ATM操作為例操作為例操作為例操作為
3、例名稱名稱 意義意義 範例範例開始(Start)終止(End)表示程式的開始或結束 路徑(Path)表示流程進行的方向 輸入(Input)輸出(Output)表示資料的輸入或結果的輸出處理(Process)表示執行或處理某一項工作 startenda=a+1輸出總和第7頁程式流程控制程式流程控制-以以ATM操作為例操作為例操作為例操作為例名稱名稱 意義意義 範例範例決策判斷(Decision)針對某一條件進行判斷迴圈(Loop)表示迴圈控制變數的初始值及終值副程式(Subroutine)用以表示一群已經定義流程的組合報表(Document)指列印出的報表文件 ABFori To ni查詢密碼印
4、出成績單程式流程控制程式流程控制-以以ATM操作為例操作為例操作為例操作為例輸出結果0123456789startX=0輸出x的值Increment XX10?end 輸出09的數第9頁程式流程控制程式流程控制-以以ATM操作為例操作為例操作為例操作為例 輸入5個實數,計算平均值,然後再印出該平均值start個數=0和=0輸入實數個數=5和=和+輸入實數個數=個數+1end平均=和/5印出平均第10頁程式流程控制程式流程控制-以以ATM操作為例操作為例操作為例操作為例 循序結構(Sequence)選擇結構(Selection)二元選擇結構(基本結構)多重選擇結構 重覆結構(Iteration)
5、while-do結構 do-while結構第12頁程式流程控制程式流程控制-以以ATM操作為例操作為例操作為例操作為例 意義:處理程序循序進行。處理程序1處理程序2第13頁程式流程控制程式流程控制-以以ATM操作為例操作為例操作為例操作為例 意義:流程依據某些條件,依條件是否成立,分別進行不同處理程序。語法:If(條件條件)處理程序處理程序1;else 處理程序處理程序2;If(條件條件)處理程序處理程序3;處理程序3條件處理程序2條件處理程序1是是否否是是否否第14頁程式流程控制程式流程控制-以以ATM操作為例操作為例操作為例操作為例 意義:流程依據某些條件,在不同的條件成立時,分別進行不同
6、處理程序。例如條件P=1時,進行處理程序1。條件P=n時,進行處理程序n。語法:switch(條件條件)case p=1:處理程序處理程序1;case p=2:處理程序處理程序2;case p=n:處理程序處理程序n;處理程序2處理程序1處理程序n條件P第15頁程式流程控制程式流程控制-以以ATM操作為例操作為例操作為例操作為例 意義:依據條件是否成立,決定執行的情況。當條件成立時,不斷重複執行處理程序,直到停止執行的條件成立後,即離開重覆執行,至下一個流程。條件是是處理程序否否語法:while(條件條件)處理程序處理程序;第16頁程式流程控制程式流程控制-以以ATM操作為例操作為例操作為例操作為例 意義:重覆執行處理程序,直到條件變成真(true)為止。條件是是處理程序否否語法:do 處理程序處理程序;while(條件條件);第17頁