【正文】
0 Y i = i + 1 m 能被 i 整除? N N found = = 1 ? 輸出:是 輸出:不是 N Y Y 按鈕 指示燈 電梯按鈕 樓層按鈕 電梯控制器 m 2m2 1 1 通信 通信 電梯 門 n 1 控制 開始 輸入 m found = 1 i = 2 (i = sqrt (m+1)) and (found==1) 結束 found = 0 Y i = i + 1 m 能被 i 整除? N N found = = 1 ? 輸出:是 輸出:不是 N Y Y 開始 輸入 m i = 2 i = sqrt (m+1) 結束 Y i = i + 1 m 能被 i 整除? N N i sqrt(m+1) 輸出:是 輸出:不是 N Y Y 程序流程圖的主要缺點如下: (1) 程序流程圖本質上不是逐步求精的好工具,它誘使程序員過早地考慮程序的控制流程,而不去考慮程序的全局結構 。 (3) 程序流程圖不易表示數(shù)據(jù)結構。 (2) 不可能任意轉移控制 。 (4) 很容易表現(xiàn)嵌套關系,也可以表示模塊的層次結構。 缺點:程序嵌套層次較多時, N- S圖的內層方框會越畫越小,不僅影響可讀性而且不易修改。 PAD圖的主要優(yōu)點如下: (1) 使用表示結構化控制結構的 PAD符號所設計出來的程序必然是結構化程序。 (2) PAD圖所描繪的程序結構十分清晰。隨著程序層次的增加, PAD圖逐漸向右延伸,每增加一個層次,圖形向右擴展一條豎線。 (3) 用 PAD圖表現(xiàn)程序邏輯,易讀、易懂、易記。 (4) 容易將 PAD圖轉換成高級語言源程序,這種轉換可用軟件工具自動完成,從而可省去人工編碼的工作,有利于提高軟件可靠性和軟件生產(chǎn)率。 (6) PAD圖的符號支持自頂向下、逐步求精方法的使用。 圖 使用 PAD圖提供的定義功能 來逐步求精的例子 本節(jié)先介紹 Jackson方法的工具 ——Jackson圖,然后介紹 Jackson程序設計方法的基本步驟。圖 構的 Jackson圖的一個例子。 圖 根據(jù)條件 A是 B或 C或 D中的某一個 (3) 重復結構 重復結構的數(shù)據(jù),根據(jù)使用時的條件由一個數(shù)據(jù)元素出現(xiàn)零次或多次構成。 圖 A由 B出現(xiàn) N次 (N≥0)組成 圖 改進的 Jackson圖 改進的 Jackson圖 Jackson結構程序設計方法基本上由下述 5個步驟組成: (1) 分析并確