- 1、本文档共64页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
结构化程序设计、算法评价[精选]
结构化程序设计、算法评价 江苏省金湖中学 张厚林 结构化程序设计 荷兰学者Dijkstra提出了“结构化程序设计”的思想,规定了一套方法,使程序具有合理的结构,以保证和验证程序的正确性。 重要目的:是使程序具有良好的结构,使程序易于设计,易于理解,易于调试修改,以提高设计和维护程序工作的效率。 结构化程序设计 结构化程序规定了三种基本结构作为程序的基本单元:顺序、分支、循环结构。 (1) 顺序结构 它是最简单,最基本的一种 结构。在这个结构中的各块 是只能顺序执行的。每一块 可以包含一条或若干条可执 行的指令。 结构化程序设计 (2) 判断选择结构 根据给定的条件是否满足执行A块或B块 结构化程序设计 (3)循环结构 “当型”循环:当给定的条件满足是执行A块,否则不执行A块而执行循环后面的部分。 “直到型”循环:执行A块直到满足给定的条件为止(满足了条件就不再执行A块)。 这两种循环的区别是:当型循环是先判断(条件)再执行,而直到型循环是先执行后判断。 结构化程序设计 三种基本结构都具有以下特点: ① 有一个入口; ② 有一个出口; ③ 结构中每一部分都应当有被执行到的机会,也就是说,每一部分都应当有一条从入口到出口的路径通过它(至少通过一次); ④ 没有死循环(无终止的循环)。 结构化程序设计 描述一个问题求解的算法有多种方法,常用的有自然语言,流程图(包括N—S图)、程序设计语言、伪代码等。 在结构化程序设计中,使用一种“结构化流程图”,所谓流程图是用图形来表示程序设计的方法,它采用一些几何图形来代表各种性质的操作,是程序设计中广泛使用的一种辅助设计手段.。 结构化程序设计 N-S结构化流程图 (1)一条简单的指令,用一个矩形框来表示: 顺序结构可以表示: 结构化程序设计 交换两个变量的值的过程: 结构化程序设计 (2)判断选择结构 结构化程序设计 判断某一年份(year)是否闰年就是一个选择结构,闰年的判断方法是:如果此年份是400倍数,则它是闰年,或者此年份不是100的倍数却是4的倍数,则它也是闰年。 结构化程序设计 与框图对应if-then语句为: if year mod 100 = 0 then if year mod 400 = 0 then writeln(‘yes’) else writeln (‘no’) else if year mod 4 = 0 then writeln (‘yes’) else writeln(‘no’) 结构化程序设计 (3)循环结构 结构化程序设计 判断一个自然数是否为质数的算法可用当型循环结构流程图来表示: 结构化程序设计 [例1]用筛选法找出n以内的所有素数(就是质数),并按每行10个数的形式打印出来.n=25时,用筛选法选素数的过程如下: (1) 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 (2) 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 (3) 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 (4) 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 (5) 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 结构化程序设计 首先确定2是素数,接着把凡是2的倍数的那些数筛去,过程见步骤(2),其中带有圆圈的数就是被筛去的数。接着把凡是3的倍数的那些数筛去,过程见步骤(3)。接着把凡是4的倍数的那些数筛去, 过程见步骤(4)。接着在把凡是5的倍数的那些数筛去,过程见步骤(5)。这时数列中剩下的未被筛去那些数就都是素数。 结构化程序设计 结构化程序设计 write(Input n:); readln(n); for i:=2 to maxn do prime[i]:=1; i:=2; while i*i=n do begin j:=i*2; while j=n do begin prime[j]:=0; j:=j+i end; i:=i+1 end; for i:=2 to n do if prime[i]=1 then write(i:8); writeln 结构化程序设计 在某些程序中,一些具有相似功能的程序段在程序的不同位置反复出现,通常将这些重复出现的程序段抽出来,单独书写成为子程序,并通过一个标识符加以标识,在程序中凡是出现这个程序段的
您可能关注的文档
- 经济学基础期终试卷(10套)[精选].doc
- 经济学复习[精选].doc
- 经济学基础第一章导言1[精选].ppt
- 经济学学习中的几点体会[精选].doc
- 经济学原理第七章[精选].ppt
- 经济学原理与启示[精选].ppt
- 经济学原理(北京大学中国经济研究中心)-海闻[精选].ppt
- 经济学方法论第一次作业[精选].doc
- 经济学本科毕业论文开题报告范文(详细文本)[精选].doc
- 经济学是研究如何有效地将稀缺资源配置于相互竞争的用...[精选].ppt
- 中国国家标准 GB/T 45390-2025动力锂电池生产设备通信接口要求.pdf
- 中国国家标准 GB/T 45393.2-2025信息技术 建筑信息模型(BIM)软件 第2部分:参数化模型.pdf
- GB/T 45393.2-2025信息技术 建筑信息模型(BIM)软件 第2部分:参数化模型.pdf
- 《GB/T 45393.2-2025信息技术 建筑信息模型(BIM)软件 第2部分:参数化模型》.pdf
- GB/T 10184-2025电站锅炉性能试验规程.pdf
- 海尔智家股份有限公司海外监管公告 - 海尔智家股份有限公司2024年度环境、社会及管治报告.pdf
- 上海复旦张江生物医药股份有限公司2024 环境、社会及管治报告.pdf
- 中国邮政储蓄银行股份有限公司中国邮政储蓄银行2024年可持续发展报告.pdf
- 豫园股份:2024年环境、社会及管治(ESG)报告.pdf
- 南京熊猫电子股份有限公司海外监管公告 - 2024年度环境、社会及治理(ESG)报告.pdf
文档评论(0)