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