一,引言 程序流程圖(Progran flowchart)作為一種算法表達工具,早已為工國計算機工作者和廣大計算機用戶十分熟悉和普通使用.然而它的一個明顯缺點在于缺乏統(tǒng)一的規(guī)范化符號表示和嚴格的使用規(guī)則.最近,國家標準局批準的國家標準(GB1525-89)<<信息處理--數(shù)據(jù)流程圖,程序流程圖,系統(tǒng)流程圖,程序網(wǎng)絡(luò)圖和系統(tǒng)資源圖的文件編制符號及約定>>為我們推薦了一套標準化符號和使用約定.由于該標準是與國際標準化組織公布的標準ISO5807--85 Information processing--Documentation symbols and comventions for data,program and system flowcharts,program network charts and system resources charts是一致的,這里將其中程序流程圖部分摘錄出來,并做了一些解釋,供讀者參考. 根據(jù)這一標準畫出的程序流程圖我們稱為標準流程圖. 二,符號 程序流程圖表示了程序的操作順序.它應包括: (1)指明實際處理操作的處理符號,包括根據(jù)邏輯條件確定要執(zhí)行的路徑的符號. (2)指明控制流的流線符號. (3)便于讀寫程序流程圖的特殊符號.
圖1 標準程序流程圖符號 1.數(shù)據(jù)---- 平行四邊形表示數(shù)據(jù),其中可注明數(shù)據(jù)名,來源,用途或其它的文字說明.此符號并不限定數(shù)據(jù)的媒體. 2.處理---- 矩形表示各種處理功能.例如,執(zhí)行一個或一組特定的操作,從而使信息的值,信息形世或所在位置發(fā)生變化,或是確定對某一流向的選擇.矩形內(nèi)可注明處理名或其簡工功能. 3.特定處理---- 帶有雙縱邊線的矩形表示已命名的特定處理.該處理為在另外地方已得到詳細說明的一個操作或一組操作,便如子例行程序,模塊.矩形內(nèi)可注明特定處理名或其簡要功能. 4.準備---- 六邊形符號表示準備.它表示修改一條指令或一組指令以影響隨后的活動.例如,設(shè)置開關(guān),修改變址寄存器,初始化例行程序. 5.判斷----- 菱形表示判斷或開關(guān).菱形內(nèi)可注明判斷的條件.它只有一個入口,但可以有若干個可供選擇的出口,在對符號內(nèi)定義折條件求值后,有一個且僅有一個出口被激活.求值結(jié)果可在表示出口路徑的流線附近寫出.
一對符號內(nèi)應注明同一循環(huán)標識符.可根據(jù)檢驗終止循環(huán)條件在循環(huán)的開始還是在循環(huán)的末尾,將其條件分別在上界限符內(nèi)注明(如:當A>B)或在下界限符內(nèi)注明(如:直到C<D).圖2給出了當終止條件成立時進入循環(huán)和直到終止條件成立退出循環(huán)的兩種不同的表示.
7.連接符---- 圓表示連接符,用以表明轉(zhuǎn)向流程圖的它處,或從流程圖它處轉(zhuǎn)入.它是流線的斷點.在圖內(nèi)注明某一標識符,表明該流線將在具有相同標識符的另一連接符處繼續(xù)下去(參看以下關(guān)于連接符使用的約定). 8.端點符---- 扁圓形表示轉(zhuǎn)向外部環(huán)境或從外部環(huán)境轉(zhuǎn)入的端點符.例如,程序流程的起始或結(jié)束,數(shù)據(jù)的外部使用起點或終點.
圖3 注解符的使用 10.流線 ----- 直線表示控制流的流線.關(guān)于流線上表示流向的箭頭,其使用方法見后面的約定. 11.虛線 ---- 虛線用于表明被注解的范圍或連接被注解部分與注解正文,也參看圖3.
圖4 省略符的使用
圖5 并行方式示例 三,使用約定 關(guān)于流程圖符號的使用約定,簡要地說明以下幾點: 1.圖的布局 流程圖中所用的符號應該均心地分布,連線保持合理的長度,并盡量少使用長線. 2.符號的形狀 流程圖中多數(shù)符號內(nèi)的空白供標注說明性文字.使用各種符號應注意符號的外形和各符號大小的統(tǒng)一,避免使符號變形或各符號大小比例不一. 3.符號內(nèi)的說明文字 應使符號內(nèi)的說明文字盡可能簡明.通常按從左向右和從上向下方式書寫,并與流向無關(guān).如果說明文字較多,符號內(nèi)寫不完,可使用注解符.若注解符干擾或影響到圖形的流程,應將正文寫在另外一頁上,并注明引用符號. 4.符號標識符
圖6 符號標識符和符號描述符 5.符號描述符 為便于進一步理解符號的功能,可標注符號描述符.通常描述符寫在符號的右上角,如圖6(b)所示. 6.詳細表示
圖7 加橫線符號及其詳細表示 7.流線 (1)標準流向與箭頭的使用 流線的標準流向是從左到右和從上到下.沿標準流向的流線可不用箭頭指示流向,但沿非標準流向的流線應用箭頭指示充向. (2)流線的交叉 應當盡量避免流線的交叉.即使出現(xiàn)流線的交叉,交叉的流線之間也沒有任何邏輯關(guān)系,并不對流向產(chǎn)生任何影響,如圖8(a)所示. (3)流線的匯集
圖8 漢線的交叉與流線的匯集 (4)符號流線進出 一般情況下,流線應從符號的左邊或項端進入,并從右邊或底端離開.其進出點均應對準符號的中心. (5)連接符 為避免出現(xiàn)流線交叉和使用長線,或某個流程圖能在另一頁上延續(xù),可用連接符將流線截斷.截斷始端的連接符稱為出口連接符,載斷末端的連接符稱為入口連接符.兩連接符中用同一標識符.
圖9 出口連接符與入口連接符 8.多出口判斷的兩種表示方法 (1)直接從判斷符號引出多條流線,如圖10(a)所示.
圖10 多出口判斷
圖11 多出口判斷出口處標出條件值
|
|