第二节算法和算法描述_第1页
第二节算法和算法描述_第2页
第二节算法和算法描述_第3页
第二节算法和算法描述_第4页
第二节算法和算法描述_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、复习:计算机解决问题的步骤是:复习:计算机解决问题的步骤是:具体问题分析问题设计算法编写程序调试程序得到答案一个笼子里有鸡和兔,现在只知道里面一共有a个头,b只脚,鸡和兔各有多少只?试设计一个算法,解决这个问题。“鸡兔同笼”问题1通过以上例子,我们能不能总结出什么是算法? 2【鸡兔同笼】中,我们是用什么来描述算法的? 3 算法还有其他的描述方法吗? 算法是在有限步骤内求解某一问题所使用的一组定义明确的规则。 算法的描述方法算法的描述方法用自然语言自然语言描述算法用流程图流程图描述算法用伪代码伪代码描述算法 自然语言用自然语言表达算法,就是把算法的各个步骤,依次用人们熟悉的自然语言表示出来。优点

2、:通俗易懂,容易理解缺点:书写较烦、不确定性、对复杂的问题难以表达准确、不能被计算机识别和执行,不便翻译成计算机程序设计语言。自然语言描述自然语言描述 流程图也称为程序框图,它是算法的一种图形化表示方法。优点:形象、直观、清晰简洁,容易表达选择结构;它不依赖任何具体的计算机和计算机程序设计语言,从而有利于不同环境的程序设计。流程图描述流程图描述程序框程序框名称名称功能功能开始开始/结束结束算法的开始和结束算法的开始和结束输入输入/输出输出变量的输入和输出变量的输入和输出处理处理变量的计算与赋值变量的计算与赋值判断判断条件判断条件判断流程线流程线算法中的流向算法中的流向连接圈连接圈表示算法流向出

3、口或入口表示算法流向出口或入口转接点转接点常用的“流程图”所用的基本符号 伪代码伪代码是用介于自然语言和计算机程序语言之间的文字和符号来描述算法的一种算法描述。优点:简洁、易懂、修改容易,便于向程序设计语言过渡。缺点:不直观、错误不容易排查,代码语句不容易规范,有时会产生误解。伪代码描述伪代码描述 S1:移项得 ax = - b ; S2:若a不等于0,则x=-b/a,结束 S3:若a=0,b=0,得x为任意值,结束; S4:否则输出x无实数解,结束;自然语言例:求方程 ax + b = 0 的解。 流程图例:求方程 ax + b = 0 的解。 输入输入 a , ba , bIf a = 0

4、 thenIf a = 0 thenif b = 0 thenif b = 0 then输出输出x x为任意值为任意值elseelse输出输出x x无实数解无实数解endendElseElsex= -b/ax= -b/aEnd ifEnd if伪代码描述例:求方程 ax + b = 0 的解。 算法的特征算法的特征3有穷性:算法在执行有穷步之后必须结束算法特征确定性:每一步都必须有确切的定义2输出:至少产生一个输出41输入:有零个或多个输入5可行性:原则上能精确运行算法在解决问题中的地位和作用:算法在解决问题中的地位和作用: 算法是程序设计的核心,是程序设计的灵魂。算法的好坏直接影响着程序的通

5、用性和有效性,影响着问题的解决效率。算法与程序的关系:算法与程序的关系: 程序可以作为算法的一种描述,但程序通常还需要考虑与计算机系统运行环境有关的细节问题,而算法关注更多的是与问题分析和求解方法有关的问题。程序的编制依赖算法的设计。程序的效率主要取决于算法的效率。小结特征:特征:有输入 确定性 有穷性 有输出 可行性 算法的描述算法的描述用自然语言描述算法用流程图描述算法用伪代码描述算法算法算法解决问题的方法和步骤 一个问题,可能有多种算法一个问题,可能有多种算法 ,应该通过分析、比,应该通过分析、比较、挑选一种最优的算法。一个好算法必须用到科学较、挑选一种最优的算法。一个好算法必须用到科学的方法的方法 ,应该好好学习各学科处理问题的科学方法。,应该好好学习各学科处理问题的科学方法。算法在解决问题中的地位和作用:算法在解决问题中的地位和作用:算法是程序设计的 核心,是程序设计的灵魂。但算法不等于程序。 一、 单项选择题 1.以下不是算法特征的是( )。A.有穷性B.确定性和可行性

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论