




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
二 算法的描述 人的思想要用语言来表达 算法是人求解问题的思想方法 是对解题过程的精确描述 同样也需要用语言来表示 表示算法的语言主要有自然语言 流程图 伪代码等 1 用自然语言描述算法 前面关于欧几里得算法以及算法实例的描述使用的都是自然语言 自然语言是人们日常所用的语言 如汉语 英语 德语 使用这些语言不用专门训练 所描述的算法也通俗易懂 问题 鸡兔同笼问题 一个笼子里有一些鸡和兔 现在只知道里面一共有 个头 只脚 问鸡和兔各有多少只 试设计一个求解的算法 并用自然语言描述出来 分析问题设所求的鸡数是x 兔数是y 已知笼子里的头数是a 脚数是b 依题意得到如下的方程组 x y a 2x 4y b 解方程组得 x 2a b 2 y b 2 a 设计算法 1 输入a和b的值 2 求x 2a b 2 3 求y b 2 a 4 输出x y的值 5 结束 问题2 设计一个算法 求100以内能被3整数的数 分析问题 设能被3整除的数为i 令i 1 2 3 100 如果i能被3整数 则输出i 否则 检查下一个 知道i 100为止 设计算法 1 令i 1 2 如果i能被3整除的数 则输出i 3 i i 1 4 如果i 100 则返回第 2 步 5 结束 然而 用自然语言描述法也存在明显的缺点 1 由于自然语言的歧义性 容易导致算法执行的不确定性 2 自然语言的语句一般太长 从而导致了用自然语言描述的算法太长 3 由于自然语言表示是按照步骤的标号顺序执行的 因此当一个算法中循环和分支较多时就很难清晰地表示出来 4 自然语言表示的算法不便翻译成计算机程序设计语言 2 用流程图描述算法在数学课程里 我们学习了用程序框图来描述算法 在程序框图中 流程图是描述算法的常用工具 它采用美国国家标准化协会ansi americannationalstandardinstitute 规定的一组图形符号来表示算法 如下表所示 使用流程图描述算法 让人感到流程的描述清晰简洁 容易表达分支结构 它不依赖于任何具体的计算机和计算机程序设计语言 从而有利于不同环境的程序设计 图2 1给出了用辗转相除发求两个数的最大公约数的算法流程图 图2 2给出了问题 的算法流程图 图2 3 给出问题 的算法流程图 算法是计算机科学的基础 计算机完成任何一项任务都需要算法 但是 用自然语言或程序框图描述的算法计算机是无法 理解 的 我们还需要将算法用计算机能够理解的语言表达出来 通常这称为程序设计 所用的语言称为程序设计语言 programminglanguage 程序设计语言由一些有特定含义的程序语句构成 与算法程序框图的三种基本结构相对应 任何程序设计语言都包含输入输出语句 赋值语句 条件语句和循环语句 不同的程序设计语言有不同的语句形式和语法规则 但基本结构是相同的 正是由于这样的原因 在研究算法的时候 有时并不很关心算法语句是否用的是某种精确的程序语言 而采用基本结构相同的更为简便易懂的语言形式 即所谓伪代码 3 用伪代码描述算法 伪代码是用介于自然语言和计算机语言之间的文字和符号来描述算法的工具 它不用图形符号 因此 书写方便 格式紧凑 易于理解 便于向计算机程序设计语言算法 程序 过渡 下面给出用辗转相除法求两个数的最大公约数的伪代码算法描述 inputm n r mmodn dowhiler0m nn rr mmodnloop printn 伪代码描述算法回避了程序设计语言严格 繁琐的书写格式
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年学历类自考专业(护理)儿科护理学(二)-外科护理学(二)参考题库含答案解析(5套)
- 2025年学历类自考专业(建筑工程)计算机基础与程序设计-结构力学(一)参考题库含答案解析(5套)
- 2025年学历类自考专业(建筑工程)工程测量-工程测量参考题库含答案解析(5套)
- 2025年银发消费市场养老服务需求技术创新与市场应用前景分析报告
- 2025年学历类自考专业(工商企业管理)企业管理概论-生产与作业管理参考题库含答案解析(5套)
- 城市配送体系智能化改造2025年规划与效率研究报告
- 农业科技示范园规划初步设计评估报告-2025年农业科技园区农业信息化技术集成
- 贵州省遵义求是中学2026届高三上化学期中教学质量检测模拟试题含解析
- 2025年学历类自考专业(学前教育)幼儿园教育基础-学前卫生学参考题库含答案解析(5套)
- 园林设计施工合同标准模板与使用指南
- 运动控制考试题及答案
- 无人机培训招生宣讲
- 2025玛纳斯县司法局招聘编制外专职人民调解员(5人)笔试模拟试题及答案解析
- 2025年陕西华山旅游集团有限公司招聘(50人)笔试备考试题及答案解析
- 中医基础理论试题及答案
- 瓜子的产品讲解
- 信访业务培训课件
- 2025年秋期人教版2年级上册数学核心素养教案(第6单元)(教学反思有内容+二次备课版)
- 海关法律法规培训
- 《铁路技术管理规程》(普速铁路部分)
- 生态文明建设与可持续发展 ppt课件
评论
0/150
提交评论