程式流程圖

2021-03-04 01:11:38 字數 2616 閱讀 2964

4.5.1程式流程圖

任何複雜的程式流程圖都應由這五種基本控制結構組合或巢狀而成。作為上述五種控制結構相互組合和巢狀的例項,圖示給出乙個程式的流程圖。圖中增加了一些虛線構成的框,目的是便於理解控制結構的巢狀關係。

顯然,這個流程圖所描述的程式是結構化的。

4.5.3 pad

pad是problem analysis diagram的縮寫,它是日本日立公司提出,由程式流程圖演化來的,用結構化程式設計思想表現程式邏輯結構的圖形工具。現在已為iso認可。

pad也設定了五種基本控制結構的圖式,並允許遞迴使用。

做為pad應用的例項,圖4.8給出了圖4.4程式的pad表示。

pad所描述程式的層次關係表現在縱線上。每條縱線表示了乙個層次。把pad圖從左到右展開。

隨著程式層次的增加,pad逐漸向右展開。

pad的執行順序從最左主幹線的上端的結點開始,自上而下依次執行。 每遇到判斷或迴圈,就自左而右進入下一層,從表示下一層的縱線上端開始執行,直到該縱線下端,再返回上一層的縱線的轉入處。如此繼續,直到執行到主幹線的下端為止。

4.5.4 判定表

當演算法中包含多重巢狀的條件選擇時,用程式流程圖、n-s圖或pad都不易清楚地描述。然而,判定表卻能清晰地表達複雜的條件組合與應做動作之間的對應關係。仍然使用圖4.

4的例子。為了能適應判定表條件取值只能是"t"和"f"的情形,對原圖稍微做了些改動,把多分支判斷改為兩分支判斷,但整個圖邏輯沒有改變。見圖4.

9。與圖3.31表示的流程圖對應的判定表如圖3.32所示。

在表的右上半部分中列出所有條件,"t"表示該條件取值為真,"f"表示該條件取值為假,空白表示這個條件無論取何值對動作的選擇不產生影響。在判定表右下半部分中列出所有的處理,畫"y"表示要做這個動作,空白表示不做這個動作。判定表右半部的每一列實質上是一條規則,規定了與特定條件取值組合相對應的動作。

4.5.5 pdl(program design language)

pdl是一種用於描述功能模組的演算法設計和加工細節的語言。稱為設計程式用語言。它是一種偽碼。

一般地,偽碼的語法規則分為"外語法"和"內語法"。外語法應當符合一般程式語言常用語句的語法規則;而內語法可以用英語中一些簡單的句子、短語和通用的數學符號,來描述程式應執行的功能。

使用pdl語言,可以做到逐步求精:從比較概括和抽象的pdl程式起,逐步寫出更詳細的更精確的描述。

4.5.6 hipo圖(hierarchy plus input process output)

hipo最初只用做文件編寫的格式要求,隨後發展成比較有名的軟體設計手段。hipo圖採用功能框圖和pdl來描述程式邏輯,它由兩部分組成:可視目錄表和ipo圖。

可視目錄表給出程式的層次關係,ipo圖則為程式各部分提供具體的工作細節。

1、可視目錄表

可視目錄表由體系框圖、圖例、描述說明三部分組成。

(1)體系框圖

又稱層次圖(h圖),是可視目錄表的主體,用它表明各個功能的隸屬關係。它是自頂向下逐層分解得到的,是乙個樹形結構。它的頂層是整個系統的名稱和系統的概括功能說明;第二層把系統的功能展開,分成了幾個框;第二層功能進一步分解,就得到了第三層、第四層,…,直到最後一層。

每個框內都應有乙個名字,用以標識它的功能。還應有乙個編號,以記錄它所在的層次及在該層次的位置。

(2)圖例

每一套hipo圖都應當有乙個圖例,即圖形符號說明。附上圖例,不管人們在什麼時侯閱讀它都能對其符號的意義一目了然。

(3)描述說明

它是對層次圖中每一框的補充說明,在必須說明時才用,所以它是可選的。描述說明可以使用自然語言。

例如,應用hipo法對盤存/銷售系統進行分析。得到如圖4.10所示的工作流程圖。

分析此工作流程圖,可得如圖3.34所示的可視目錄表。圖4.11(a)是系統的層次圖,圖4.11(b)是後面ipo圖的圖例,圖4.11(c)是描述說明。

2、ipo圖

ipo圖為層次圖中每一功能框詳細地指明輸入、處理及輸出。通常,ipo圖有固定的格式,圖中處理操作部分總是列在中間,輸入和輸出部分分別在其左邊和右邊。由於某些細節很難在一張ipo圖中表達清楚,常常把ipo圖又分為兩部分,簡單概括的稱為概要ipo圖,細緻具體一些的稱為詳細ipo圖。

概要ipo圖用於表達對乙個系統,或對其中某乙個子系統功能的概略表達,指明在完成某一功能框規定的功能時需要哪些輸入,哪些操作和哪些輸出。圖4.12是表示銷售/盤存系統第二層的對應於h圖上的1.

1.0框的概要ipo圖。

3、利用hipo進行迭代式細化設計

在軟體設計時,解決設計問題通常需要經歷乙個認識逐步發展的過程,並且對一些問題還要經過反覆的考慮才可能達到比較滿意的設計效果。我們稱此為迭代式細化設計。hipo能很好地適應這一要求。

圖4.14是利用hipo進行迭代式細化設計的示意圖。從圖中可看到,把可視目錄表和ipo圖結合起來,反覆交替地使用它們,可使得設計工作逐步深化,最終取得完滿的設計結果。

其實這正是自頂向下,逐步求精的結構化程式設計思想。

hipo有自己的特點。首先,這一圖形表達方法容易看懂。其次,hipo的適用範圍很廣,絕不限於詳細設計。

事實上,畫可視目錄表就是與概要設計密切相關的工作。如果利用它僅僅表達軟體要達到的功能,則是需求分析中描述需求的很好的工具。因為hipo是在開發過程中的表達工具,所以它又是開發文件的編制工具。

開發完成後,hipo圖就是很好的文件,而不必在設計完成以後,專門補寫文件。

評價程式流程圖

附件2 一 施工 監理企業按照規定時限在 管理系統 填報本企業基本資訊及信用自評資料,通過管理系統生成 信用自評報告 和 專案信用評價表 其中,信用自評報告 送所在地級以上市交通主管部門或上級部門審核 專案信用評價表 送建設單位複評。二 建設單位對本專案各從業單位的 專案信用評價表 進行複評,並負責...

程式流程圖編寫規範

國際通用的流程圖形態和程式 開始 六角菱型 過程 四方型 決策 菱型 終止 橢圓型 在作管理業務流程圖時,國際通用的形態 方框是流程的描述 菱形是檢查 審批 審核 一般要有迴路的 橢圓一般用作乙個流程的終結 小圓是表示按順序資料的流程 豎檔案框式的一般是表示原定的程式 兩邊檔案框式的一般是表示留下來...

標準程式流程圖的符號

3.特定處理 帶有雙縱邊線的矩形表示已命名的特定處理.該處理為在另外地方已得到詳細說明的乙個操作或一組操作,便如子例行程式,模組.矩形內可註明特定處理名或其簡要功能.4.準備 六邊形符號表示準備.它表示修改一條指令或一組指令以影響隨後的活動.例如,設定開關,修改變址暫存器,初始化例行程式.5.判斷 ...