- 1、本文档共45页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章_详细设计37098.ppt
* * * * * * * * * * * * * * * PDL是一种用于描述功能模块的算法设计和加工细节的语言。称为设计程序用语言。它是一种伪码。 伪码的语法规则分为“外语法”和“内语法”。 PDL具有严格的关键字外语法,用于定义控制结构和数据结构,同时它的表示实际操作和条件的内语法可使用自然语言的词汇。 * * * * * * * * * * * * * * * * * * * * a b 条 件 1 T F Case Xi, i=2,3,4 X2 X3 X4 当条件3成立 条 件 2 直到条件4成立 直 到 条 件 成立 c d e f g h i j 顺序结构 选择结构 多分支选择结构 先判定型循环结构 后判定型循环结构 F T T F N-S图举例 4.5.2 N—S图 N-S图举例 3、PAD图—问题分析图(problem Analysis Diagram) 其基本控制结构如下: 任务1 任务2 任务3 顺序结构 WHILE型条件 循环体 先判定型循环结构 条件 then部分 else部分 选择结构 T F UNTIL型条件 循环体 后判定型循环结构 控 制 变 量 任务1 任务2 任务n 多分支选择结构 值 1 值 2 值 n 4.5.3 PAD图 4.5.3 PAD图 PAD图基本结构 软件工程 PAD示例 while-do x3 b f g x1 a do-while x6 j x4 do-while x5 h i c d e x2 =1 =2 =3 BEGIN FIRST:=K[1]; SECOND:=0; FIRST=K[I] SECOND=0 I:=2 to N K[I] SECOND K[I]FIRST SECOND =FIRST FIRST=K[I] SECOND =K[I] ELSE SECOND:=K[I] END END END. PASCAL源程序段 对应PAD图 FOR I:=2 TO N DO BEGIN IF K[I]SECOND THEN BEGIN IF K[I]FIRST THEN BEGIN SECOND:=FIRST; FIRST:=K[I] END PAD图应用举例 例2 4.5.3 PAD图 PAD图应用举例 PDL(Program Design Language)程序设计语言 这是一种结构化的语言。是非形式化比较灵活的语言,用于描述模块内部过程的具体算法,以便在开发人员之间比较精确的进行交流。 PDL的语法是开放式的,其外层语法是确定的,而内层语法则不确定。外层语法描述控制结构它用类似于一般程序设计语言控制结构的关键字: 如 : IF-THEN-ELSE WHILE- DO REPEAT- UNTIL DO CASE DO WHILE 等表示。 有时还用关键字反排,表示控制结构结束: DO - OD IF - FI 4.5.4 PDL语言 软件工程 示例: 拼词检查程序 PROCEDURE spellcheck BEGIN --* split document into single words LOOP get next word add word to word list in sortorder EXIT WHEN all words processed END LOOP --* look up words in dictionary LOOP get word from word list 软件工程 IF word not in dictionary THEN --* display words not in dictionary display word prompt on user terminal IF user response says word OK THEN add word to good word list ELSE add word to bad word list
文档评论(0)