第6章-详细设计-1.ppt

  1. 1、本文档共66页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章-详细设计-1资料

* * PAD图 PAD图 问题分析图(PAD图) 特点 结构清晰,层次分明,易读 支持逐步求精的设计思想 容易将PAD自动转换为高级语言源程序 * * 将下面给出的伪码转换为PAD图。 void root ( float root1, float root2 ) { i = 1; j = 0; while ( i = 10 ) { 输入一元二次方程的系数a, b, c; p = b*b – 4*a*c; if ( p 0 ) 输出“方程i无实数根”; else if ( p 0 ) 求出根并输出; else{ 求出重根并输出; j = j + 1; } i = i +1; } 输出重根的方程的个数j; } 课堂练习 * * i = 1; j = 0; 输出重根的方程个数j while ( i = 10 ) 输入a,b,c; 计算 p = b2–4ac; 求出根并输出 p 0 ? p 0 ? 输出方程i无实根 求出重根并输出; j = j+1; i = i + 1; PAD图 * * 作业 P141 3、4 * * * * * 在上述程序中一共用了6个goto语句,一个向前,5个向后,显然这不是一个结构化程序,程序可读性差。 * * * * * 举例--三个数中找出最小数 程序1 if ( A B ) goto120; if ( B C ) goto110; 100 write ( C ); goto140; 110 write ( B ); goto140; 120 if ( A C ) goto130; goto100; 130 write ( A ); 140 end 程序2 if ( A B ) and ( A C ) then write ( A ) else if ( A ≥B ) and ( B C ) then write ( B ) else write ( C ) endif endif 结构化程序设计 * * “结构化”起源:对GOTO的认识 1966年Bohm和Jacopini证明了,只用三种基本的控制结构就能实现任何单入口单出口的程序。这三种基本的控制结构是“顺序”、“选择”和“循环”。 1972年IBM公司的Mills进一步提出,程序应该只有一个入口和一个出口,从而补充了结构程序设计的规则。 结构化程序设计 * * 结构程序设计 定义 结构程序设计的经典定义如下所述:“如果一个程序的代码块仅仅通过顺序、选择和循环这3种基本控制结构进行连接,并且每个代码块(控制结构)只有一个入口和一个出口,则称这个程序是结构化的。” * * 三种基本的控制结构 顺序结构,先执行A再执行B IF_THEN_ELSE型选择(分支)结构 DO_WHILE型循环结构: 结构化程序设计 * * 为了实际使用方便起见,常常还允许使用DO_CASE型多分支结构和DO_UNTIL型循环结构。 其他常用的控制结构 结构化程序设计 * * 这三种基本结构就可以实现任何单入口单出口的程序。但为了使用方便,还允许有DO_UNTIL和DO_CASE两种控制结构。有时为了提前从循环中跳出,还允许有BREAK结构。 我们称只允许使用三种基本结构的为经典的结构化程序设计;除三种基本结构外,还可用DO_UNTIL和DO_CASE的为扩展的结构程序设计;若再加上BREAK则称为修正的结构程序设计。 结构化程序设计 * * a b X1 X2 X7 X4 X3 X5 i f e d c j T F F F T T 举例:指出所有的基本程序结构 选择 当循环 多分支 直到循环 * * … … for(a=1,b=1;a=100,a++) { if (b=20) break; if (b%3==1) { b+=3; continue; } b-=5; } … … a=100 F T b=20 b%3==1 b+=3 a++ b-=5 T F F T a=0,b=1 单入口 M1 单出口 举例 * * AB A,B,C BC AC 打印B F T F T T F

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档