- 1、本文档共32页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六讲、算法和流程图
/ 第2章、程序的灵魂—— 算法 本章学习目标 理解算法的概念 了解算法的表示方法 掌握流程图的绘制方法 掌握三种基本结构的流程图 了解结构化程序设计方法 内容进度 算法 算法的表示方法 自然语言 传统流程图 N-S流程图 伪代码 计算机语言 各种表示方法的比较 结构化程序设计方法 文档和注释 算法的引入 问题:计算矩形的周长 第一步:定义三个变量存储长、宽和周长 第二步:提示用户输入矩型的长和宽 第三步:计算周长,两个长加上两个宽 第四步:打印计算结果 算法的定义: 解决问题所使用的一系列合乎逻辑的、简洁的步骤。 算法与程序关系 著名科学家沃思(Nikiklaus Wirth)的公式: 数据结构+算法=程序 扩充后的公式: 数据结构+算法+程序设计方法+语言和环境=程序 算法是灵魂,数据结构是加工对象,语言是工具,程序设计方法是使用手段。 算法的特性 有穷性 确定性 有效性 有零个或多个输入 有一个或多个输出 算法的分析与优化 分析程序的算法设计,应先看主流程图,再逐步细化地分析 了解算法是否实现了任务需求,方法是否合理 性能上是否存在瓶颈,能否被优化 如果有多个输入条件,处理时是否覆盖了全部输入条件 如果有多个输出结果,其输出是否被系统所定义和处理 内容进度 算法 算法的表示方法 自然语言 传统流程图 N-S流程图 伪代码 计算机语言 各种表示方法的比较 结构化程序设计方法 文档和注释 算法的表示方法 案例:判断2000~2500年中的每一年是否为闰年。 闰年的条件: 能被4整除,但不能被100整除的年份; 能被100整除,又能被400整除的年份; 自然语言 自然语言描述: 设y为被检测的年份,则算法可表示如下: S1:2000→y; S2:若y不能被4整除,则输出y“不是闰年”,然后转到S6; S3:若y能被4整除,不能被100整除,则输出y“是闰年”,然后转到S6; S4:若y能被100整除,又能被400整除,输出y“是闰年” ,然后转到S6; S5:输出y“不是闰年”,然后转到S6; S6:y+1→y; S7:当y≤2500时, 返回S2继续执行,否则结束。 自然语言 使用自然语言描述算法的优缺点: 优点: 通俗易懂 缺点: 文字冗长 含义不太严格,容易出现歧义 内容进度 算法 算法的表示方法 自然语言 传统流程图 N-S流程图 伪代码 计算机语言 各种表示方法的比较 结构化程序设计方法 文档和注释 传统流程图 用一些图框表示指令或活动的各种操作流程 ANSI规定的常用流程图符号: 三种基本结构 顺序结构 选择结构 三种基本结构 循环结构 应用举例 优点: 比较清晰,可以解决任何复杂的问题 缺点: 流程图比较长,基本结构之间的流程线多余 内容进度 算法 算法的表示方法 自然语言 传统流程图 N-S流程图 伪代码 计算机语言 各种表示方法的比较 结构化程序设计方法 文档和注释 N-S流程图 美国学者I.Nassi和B.shneiderman提出 流程图符号: 内容进度 算法 算法的表示方法 自然语言 传统流程图 N-S流程图 伪代码 计算机语言 各种表示方法的比较 结构化程序设计方法 文档和注释 伪代码 内容进度 算法 算法的表示方法 自然语言 传统流程图 N-S流程图 伪代码 计算机语言 各种表示方法的比较 结构化程序设计方法 文档和注释 计算机语言 内容进度 算法 算法的表示方法 自然语言 传统流程图 N-S流程图 伪代码 计算机语言 各种表示方法的比较 结构化程序设计方法 文档和注释 各种表示方法比较 绘制流程图应该注意的事项 一个流程图只有一个入口点和一个出口点; 主要画出问题的逻辑处理过程,无需将每一步都画的很详细; 如果算法很复杂,则可以先画出大的逻辑关系,再把一些关键处理步骤细化成的流程图; 流程图在跨页时,需要在流程线上标注出号码,以便在下一页找出对应关系; 让编程人员或读者能够容易读懂流程图。 内容进度 算法 算法的表示方法 自然语言 传统流程图 N-S流程图 伪代码 计算机语言 各种表示方法的比较 结构化程序设计方法 文档和注释 结构化程序设计方法 C语言是结构化程序设计方法 优点: 程序便于编写、阅读、修改、维护 程序可靠性较好,质量较高 主要有两种: 自顶向下、逐步细化、模块化设计、结构化编码 把一个复杂问题的求解过程分阶段进行,每个阶段处理的问题都控制在人们容易理解和处理的范围内。例如,建筑楼房。 优点:程序结构周全、层次分明、容易设计,读者易理解,且修改方便。 自下而上、逐步积累 先处理细节和小的地方,然后再组织起来形成系统。 缺
您可能关注的文档
- 电大电气传动技术及应用课程设计任务书.doc
- 挑战杯申报书说明.ppt
- 第三章 信息流、资金流、物流1.doc
- 补货作业 new.ppt
- 加蓬壳牌作业成本管理.ppt
- CAD布局应用示例.doc
- 申报护理科研课题.ppt
- 怎样提高作业效率.pptx
- 产品返修管理流程.doc
- 单片机原理及应用(C语言版)(周国运)习题答案.doc
- 第十一章 电流和电路专题特训二 实物图与电路图的互画 教学设计 2024-2025学年鲁科版物理九年级上册.docx
- 人教版七年级上册信息技术6.3加工音频素材 教学设计.docx
- 5.1自然地理环境的整体性 说课教案 (1).docx
- 4.1 夯实法治基础 教学设计-2023-2024学年统编版九年级道德与法治上册.docx
- 3.1 光的色彩 颜色 电子教案 2023-2024学年苏科版为了八年级上学期.docx
- 小学体育与健康 四年级下册健康教育 教案.docx
- 2024-2025学年初中数学九年级下册北京课改版(2024)教学设计合集.docx
- 2024-2025学年初中科学七年级下册浙教版(2024)教学设计合集.docx
- 2024-2025学年小学信息技术(信息科技)六年级下册浙摄影版(2013)教学设计合集.docx
- 2024-2025学年小学美术二年级下册人美版(常锐伦、欧京海)教学设计合集.docx
最近下载
- 江苏省扬州市扬州中学2023-2024学年高一上学期12月月考数学试题(含答案解析).docx
- 2024年国家电网招聘之财务会计类题库附参考答案(轻巧夺冠).docx
- 恶性肿瘤放疗患者营养治疗专家共识解读PPT课件【31页】.pptx VIP
- 江苏省海门市高一上学期期末考试(数学).doc
- PowerVision臻迪无人机PowerEgg用户手册.pdf
- 蓝海华腾变频器说明书.pdf
- 幼儿园小班家访记录表.pdf
- 江苏省扬州市邗江中学2019-2020学年高一上学期期中数学试题(解析版).pdf VIP
- 第一讲数字集成电路质量评价.ppt
- 辽宁省沈阳市浑南区2022-2023学年九年级上学期10月月考物理试题(含答案).pdf VIP
文档评论(0)