1、第4组,第4周研讨题,过程设计的图形化表达工具程序流程图、盒图和PAD如何分别表示程序的3种基本控制结构的?比较程序流程图、盒图和PAD的特点下面2张程序流程图表示的程序是结构化的吗?若不是,请将其转化为功能等价的结构化程序。再分别用盒图和PAD加以表示。,(1)程序流程图、盒图和PAD如何分别表示程序的3种基本控制结构的?,程序流程图基本结构,盒图基本结构,PAD基本结构,(2)比较程序流程图、盒图和PAD的特点,程序流程图,特点:历史最悠久、使用最广泛、最混乱优:直观,适合初学者缺:不是逐步求精的好工具不以表示数据结构用箭头表示数据流,程序员可能随意转移控制,盒图,特点:功能域明确,一眼看
2、出不可能任意转移控制容易确定局部、全程数据的作用域容易表现嵌套关系,模块层次结构 坚持使用N-S图作为详细设计的工具,可是程序员养成结构化的方式思考问题和解决问题 的习惯!,PAD图,优点:结构化程序-PAD符号是表示结构化 控制的;程序结构清晰(竖线总条数即程序层次数);易读、易懂、易记;易将PAD图转为高级语言源程序;可用于表示程序逻辑,也可用于描绘数据结构支持自顶向上,逐步求精;,(3)下面2张程序流程图表示的程序是结构化的吗?若不是,请将其转化为功能等价的结构化程序。再分别用盒图和PAD加以表示。,结构化程序一般应由三种基本结构即顺序结构、分支结构和循环结构组成。其特点是:1)只有一个
3、入口;2)只有一个出口(指结构与结构之间);3)无死语句(即没有永远执行不到的语句);4)无死循环(即没有永远执行不完的循环)。,非结构化程序往往表现为有两个或两个以上出口和不加限制地使用G OT O 语句。,举例:,条件复合法这种方法是把控制循环结束的两个或两个以上的单一条件组合成一个复合条件,用一个逻辑表达式作为循环控制条件,把循环体中产生非正常出口的条件语句移到循环体之外。,布尔标志变量法:它是利用向非结构化程序中引入一个赋了某个假定值的辅助变量作标志,并把此辅助变量作为循环控制条件之一,从而有效地使循环多出口转化为循环单出口,终止标志变盘法:在B A SI C 语言的FO R 一N E x T 循环中,终止标志技术是消除循环体内非正常出口的有效方法.它是利用循环变量作终止标志,解决循环体内多出口问题,变非结构化程序为结构化程序。,盒图,if(POWER_N=1)OUTPUT;else caculate new line;while(Required LINE_NUMBER in triang)caculate new line;output expansion;,PAD图,The end,