了解算法与程序设计语言课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《了解算法与程序设计语言课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 了解 算法 程序设计语言 课件
- 资源描述:
-
1、精选PPT1任务任务3 了解算法与程序设计语言了解算法与程序设计语言 3.3.1 算法算法 3.3.2 程序设计语言的发展程序设计语言的发展 3.3.3 几种程序设计语言介绍几种程序设计语言介绍 精选PPT2计算机计算机求解问题的步骤求解问题的步骤(1)确定并理解问题;确定并理解问题;(2)寻找解决问题的方法与步骤,并将其表示寻找解决问题的方法与步骤,并将其表示成成算法算法(Algorithm);(3)使用某种程序设计语言描述该算法使用某种程序设计语言描述该算法(编程编程),并编译成目标程序和进行调试;并编译成目标程序和进行调试;(4)运行程序,获得问题的解答;运行程序,获得问题的解答;(5)
2、进行评估,改进算法和程序进行评估,改进算法和程序精选PPT3算法的概念算法的概念 计算机算法是问题求解规则(方法)的一计算机算法是问题求解规则(方法)的一种过程描述,在执行有穷步的运算后结束。种过程描述,在执行有穷步的运算后结束。算法不仅在计算某一类问题时可以应用,算法不仅在计算某一类问题时可以应用,有时一些实际问题中也要应用算法。有时一些实际问题中也要应用算法。在用计算机求解一些问题时,必须根据问在用计算机求解一些问题时,必须根据问题的要求,设计出一种算法,以使计算机题的要求,设计出一种算法,以使计算机精确而有效地去求解该问题。精确而有效地去求解该问题。精选PPT4算法是解决问题的方法与步骤
3、算法是解决问题的方法与步骤例:有三个硬币,其中一例:有三个硬币,其中一个是伪造的,另两个是真个是伪造的,另两个是真的,伪币与真币重量略有的,伪币与真币重量略有不同。现在提供一座天平,不同。现在提供一座天平,如何如何找出伪币呢?找出伪币呢?分析:分析:l方法明确而有序方法明确而有序l按提供的条件进行操作按提供的条件进行操作l任何人均可仿照进行任何人均可仿照进行(共共享智能享智能)开始开始C是伪币是伪币B是伪币是伪币A是伪币是伪币AB?AC?是是否否否否是是A B C精选PPT5关于算法的三方面问题关于算法的三方面问题如何确定算法(算法设计)?如何确定算法(算法设计)?如何表示算法(算法表示)?如
4、何表示算法(算法表示)?如何使算法更有效(算法分析)?如何使算法更有效(算法分析)?精选PPT6算法的特征算法的特征(1)输入性。一个算法可以有多个输入,也可以输入性。一个算法可以有多个输入,也可以没有输入(没有输入(0个输入)。个输入)。(2)输出性。一个算法必须有一个或多个输出。输出性。一个算法必须有一个或多个输出。(3)确定性。算法的每个步骤必须有确切的定义,确定性。算法的每个步骤必须有确切的定义,即每一步骤应该执行何种动作必须是相当清楚的、即每一步骤应该执行何种动作必须是相当清楚的、无二义性的。无二义性的。(4)有穷性。一个算法总是在执行了有穷步的操有穷性。一个算法总是在执行了有穷步的
5、操作后终止。作后终止。(5)能行性。算法中有待执行的操作都是可执)能行性。算法中有待执行的操作都是可执行的,即在计算机的能力范围之内,且在有限的行的,即在计算机的能力范围之内,且在有限的时间内能够完成。时间内能够完成。精选PPT7算法的表示算法的表示 算法的表示可以多种形式。算法的表示可以多种形式。(1)自然语言。自然语言像英语、汉语等来描)自然语言。自然语言像英语、汉语等来描述算法的方法述算法的方法。(2)流程图。使用特定的图形符号来描述描述。)流程图。使用特定的图形符号来描述描述。(3)伪代码。一种介于自然语言和程序设计语)伪代码。一种介于自然语言和程序设计语言之间的文字和符号表达工具。言
6、之间的文字和符号表达工具。(4)程序设计语言。使用某一种程序设计语言)程序设计语言。使用某一种程序设计语言所提供的语言成分,根据语言的特点,并利用语所提供的语言成分,根据语言的特点,并利用语言提供的各种工具和手段,遵照规定的语法规则,言提供的各种工具和手段,遵照规定的语法规则,去实现算法这就是所谓的程序编码。去实现算法这就是所谓的程序编码。精选PPT8文字文字(自然语言自然语言)描述描述“比较与的重量,若,则是比较与的重量,若,则是伪造的;否则再比较与的重量,若伪造的;否则再比较与的重量,若,则是伪造的;否则是伪造的。,则是伪造的;否则是伪造的。”缺点:缺点:l容易产生歧义,容易产生歧义,很难
7、很难“精确精确”地进行表达地进行表达l叙述冗长,很难清楚地表达算法的逻辑流程叙述冗长,很难清楚地表达算法的逻辑流程精选PPT9算法的流程图表示算法的流程图表示流程图由结点和有向边构成,它描流程图由结点和有向边构成,它描述了算法所执行操作的顺序及执行述了算法所执行操作的顺序及执行操作的条件操作的条件流程图符号流程图符号:比文字描述简明,但当算法比较复比文字描述简明,但当算法比较复杂时,理解困难,容易产生错误杂时,理解困难,容易产生错误 端点符端点符处理处理判断判断预定义功能预定义功能原始数据放在原始数据放在数组数组A中;令中;令 i=1确定确定Ai到到An中最中最小整数的位置小整数的位置,设为设
8、为jAi 和和Aj交换位置交换位置i=i+1i=n?结束结束开始开始用流程图表示用流程图表示选择排序算法选择排序算法精选PPT10流程图使用的图形符号流程图使用的图形符号 图形符号图形符号名称名称代表的操作代表的操作输入输入/输出输出数据的输入输出数据的输入输出处理处理各种形式的数据处理各种形式的数据处理判断判断判断选择,根据条件满足与否选择判断选择,根据条件满足与否选择不同的路径不同的路径起止起止流程的起点与终点流程的起点与终点流程线流程线连接各个框图,表示执行顺序连接各个框图,表示执行顺序连接点连接点表示与流程图其他部分相连接表示与流程图其他部分相连接精选PPT11将原始数据放在数组将原始
9、数据放在数组A A中;中;设置设置i i的初值为的初值为1 1,循环执行下列操作,直到,循环执行下列操作,直到i=n i=n:确定确定Ai Ai 到到AnAn中最小整数的位置,设为中最小整数的位置,设为j j;交换交换AiAi和和j j;i=i+1i=i+1 使用伪代码描述使用伪代码描述“选择排序选择排序”算法算法使用伪代码描述算法使用伪代码描述算法伪代码伪代码(Pseudo code)是用来描述算法的一种语是用来描述算法的一种语言,它既类似于自然语言,又使用与程序设计语言相言,它既类似于自然语言,又使用与程序设计语言相似的方法描述算法似的方法描述算法优点:结构清晰,代码简单,可读性好,可以容
10、易地以优点:结构清晰,代码简单,可读性好,可以容易地以任何一种编程语言任何一种编程语言(Pascal,C,Java等等)实现实现每个整数是每个整数是A的一个元素:的一个元素:A1,A2,An精选PPT12算法的基本要素算法的基本要素(1)算法对数据的运算和操作)算法对数据的运算和操作在一般的计算机系统中,基本的运算和操作包括:在一般的计算机系统中,基本的运算和操作包括:自述运算、逻辑运算、关系运算、数据传输四类。自述运算、逻辑运算、关系运算、数据传输四类。(2)算法的控制结构)算法的控制结构算法的功能不仅取决于所选用的操作,还与算法算法的功能不仅取决于所选用的操作,还与算法的控制结构有很大关系
11、。算法的控制结构指的是的控制结构有很大关系。算法的控制结构指的是算法中各操作之间的执行顺序。一般情况下,一算法中各操作之间的执行顺序。一般情况下,一个算法可以由顺序、选择和循环个算法可以由顺序、选择和循环3种基本控制结种基本控制结构组合而成。构组合而成。精选PPT13三种基本算法结构的图形表示三种基本算法结构的图形表示(a)是顺序结构,其中的每个处理()是顺序结构,其中的每个处理(A和和B)顺序执行。)顺序执行。(b)是选择结构。其中)是选择结构。其中e为判决条件,进入选择结构,首先为判决条件,进入选择结构,首先判断判断e成立与否,再根据判断结果,选择执行处理成立与否,再根据判断结果,选择执行
12、处理A或处理或处理B后后退出。退出。循环结构分为两类。(循环结构分为两类。(c)称为)称为“当型循环当型循环”;(;(d)称为)称为“直到型循环直到型循环”。循环结构中的处理。循环结构中的处理A是要重复执行的操作,是要重复执行的操作,叫做叫做“循环体循环体”;e是控制循环执行的条件。当型循环是当条是控制循环执行的条件。当型循环是当条件件e成立,就继续执行成立,就继续执行A,否则就结束循环;而直到型循环是,否则就结束循环;而直到型循环是重复执行重复执行A,直到条件,直到条件e成立,循环结束。成立,循环结束。ABABAETrueFalseBEETrueFalseTrueFalse(a)(b)(c)
13、(d)图3-4 三种基本算法结构精选PPT14三种基本结构的共同特点三种基本结构的共同特点(1)只有单一的入口和单一的出口;)只有单一的入口和单一的出口;(2)结构中的每个都有执行到的可能;)结构中的每个都有执行到的可能;(3)结构内不存在永不终止的死循环。)结构内不存在永不终止的死循环。精选PPT15算法设计的目标算法设计的目标(1)正确性。算法应满足具体问题的需求,这是算法设正确性。算法应满足具体问题的需求,这是算法设计最起码的目标。计最起码的目标。(2)可读性。一个算法设计完成后,并非仅供算法设计可读性。一个算法设计完成后,并非仅供算法设计者个人使用,因此首先应让使用者能够理解、阅读与交
14、流,者个人使用,因此首先应让使用者能够理解、阅读与交流,其次才是机器执行。其次才是机器执行。(3)健壮性。当输入的数据非法时,算法应当能够做出健壮性。当输入的数据非法时,算法应当能够做出适当的反应或进行处理,从而避免产生不可预料的输出结适当的反应或进行处理,从而避免产生不可预料的输出结果。果。(4)高效率。所谓效率,是指算法执行的时间。对于同高效率。所谓效率,是指算法执行的时间。对于同一个问题如果有多个可供选择的算法,应尽可能选择执行一个问题如果有多个可供选择的算法,应尽可能选择执行时间短的算法,这样的算法无疑效率是较高的。时间短的算法,这样的算法无疑效率是较高的。(5)低存储量需求。算法的存
15、储量需求是指算法执行过低存储量需求。算法的存储量需求是指算法执行过程中所需的最大存储空间。对于同一个问题如果有多个算程中所需的最大存储空间。对于同一个问题如果有多个算法可供选择,应尽可能选择存储量需求低的算法。法可供选择,应尽可能选择存储量需求低的算法。精选PPT16什么是程序设计语言?什么是程序设计语言?什么是程序?什么是程序?l程序是为了用计算机解决某个问题而采用程序是为了用计算机解决某个问题而采用程序设计语言程序设计语言编写编写的一个指令序列的一个指令序列什么是程序设计语言?什么是程序设计语言?l语言的目的是用于通信语言的目的是用于通信l程序设计语言用于人与计算机之间的通信程序设计语言用
16、于人与计算机之间的通信l程序设计语言是由人使用但计算机可以理解的一种语言程序设计语言是由人使用但计算机可以理解的一种语言l程序设计语言用于编制程序,表达需要计算机完成什么任务程序设计语言用于编制程序,表达需要计算机完成什么任务和怎样完成任务,然后交给计算机去完成和怎样完成任务,然后交给计算机去完成精选PPT17 程序设计语言填补了程序设计语言填补了 人与计算机交流的鸿沟人与计算机交流的鸿沟计算机硬件仅仅计算机硬件仅仅知道知道0和和1有 问 题 需 要有 问 题 需 要计 算 机 解 决计 算 机 解 决的人的人交流的鸿沟交流的鸿沟计算机硬件仅仅计算机硬件仅仅知道知道0和和1有问题需要计有问题需
展开阅读全文