了解算法与程序设计语言.ppt

上传人:本田雅阁 文档编号:2204192 上传时间:2019-03-03 格式:PPT 页数:35 大小:353.51KB
返回 下载 相关 举报
了解算法与程序设计语言.ppt_第1页
第1页 / 共35页
了解算法与程序设计语言.ppt_第2页
第2页 / 共35页
了解算法与程序设计语言.ppt_第3页
第3页 / 共35页
亲,该文档总共35页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《了解算法与程序设计语言.ppt》由会员分享,可在线阅读,更多相关《了解算法与程序设计语言.ppt(35页珍藏版)》请在三一文库上搜索。

1、任务3 了解算法与程序设计语言,3.3.1 算法 3.3.2 程序设计语言的发展 3.3.3 几种程序设计语言介绍,计算机求解问题的步骤,(1) 确定并理解问题; (2) 寻找解决问题的方法与步骤,并将其表示成算法(Algorithm) ; (3) 使用某种程序设计语言描述该算法(编程), 并编译成目标程序和进行调试; (4) 运行程序,获得问题的解答; (5) 进行评估,改进算法和程序,算法的概念,计算机算法是问题求解规则(方法)的一种过程描述,在执行有穷步的运算后结束。 算法不仅在计算某一类问题时可以应用,有时一些实际问题中也要应用算法。 在用计算机求解一些问题时,必须根据问题的要求,设计

2、出一种算法,以使计算机精确而有效地去求解该问题。,算法是解决问题的方法与步骤,例:有三个硬币,其中一个是伪造的,另两个是真的,伪币与真币重量略有不同。现在提供一座天平,如何找出伪币呢? 分析: 方法明确而有序 按提供的条件进行操作 任何人均可仿照进行(共享智能),A B C,关于算法的三方面问题,如何确定算法(算法设计)? 如何表示算法(算法表示)? 如何使算法更有效(算法分析)?,算法的特征,(1)输入性。一个算法可以有多个输入,也可以没有输入(0个输入)。 (2)输出性。一个算法必须有一个或多个输出。 (3)确定性。算法的每个步骤必须有确切的定义,即每一步骤应该执行何种动作必须是相当清楚的

3、、无二义性的。 (4)有穷性。一个算法总是在执行了有穷步的操作后终止。 (5)能行性。算法中有待执行的操作都是可执行的,即在计算机的能力范围之内,且在有限的时间内能够完成。,算法的表示,算法的表示可以多种形式。 (1)自然语言。自然语言像英语、汉语等来描述算法的方法 。 (2)流程图。使用特定的图形符号来描述描述。 (3)伪代码。一种介于自然语言和程序设计语言之间的文字和符号表达工具。 (4)程序设计语言。使用某一种程序设计语言所提供的语言成分,根据语言的特点,并利用语言提供的各种工具和手段,遵照规定的语法规则,去实现算法这就是所谓的程序编码。,文字(自然语言)描述,“比较与的重量,若,则是伪

4、造的;否则再比较与的重量,若,则是伪造的;否则是伪造的。” 缺点: 容易产生歧义,很难 “精确”地进行表达 叙述冗长,很难清楚地表达算法的逻辑流程,算法的流程图表示,流程图由结点和有向边构成,它描述了算法所执行操作的顺序及执行操作的条件 流程图符号 :,比文字描述简明,但当算法比较复杂时,理解困难,容易产生错误,用流程图表示选择排序算法,流程图使用的图形符号,使用伪代码描述算法,伪代码(Pseudo code)是用来描述算法的一种语言,它既类似于自然语言,又使用与程序设计语言相似的方法描述算法,优点:结构清晰,代码简单,可读性好,可以容易地以任何一种编程语言(Pascal, C, Java等)

5、实现,每个整数是A的一个元素:A1, A2, , An,算法的基本要素,(1)算法对数据的运算和操作 在一般的计算机系统中,基本的运算和操作包括:自述运算、逻辑运算、关系运算、数据传输四类。 (2)算法的控制结构 算法的功能不仅取决于所选用的操作,还与算法的控制结构有很大关系。算法的控制结构指的是算法中各操作之间的执行顺序。一般情况下,一个算法可以由顺序、选择和循环3种基本控制结构组合而成。,三种基本算法结构的图形表示,(a)是顺序结构,其中的每个处理(A和B)顺序执行。 (b)是选择结构。其中e为判决条件,进入选择结构,首先判断e成立与否,再根据判断结果,选择执行处理A或处理B后退出。 循环

6、结构分为两类。(c)称为“当型循环”;(d)称为“直到型循环”。循环结构中的处理A是要重复执行的操作,叫做“循环体”;e是控制循环执行的条件。当型循环是当条件e成立,就继续执行A,否则就结束循环;而直到型循环是重复执行A,直到条件e成立,循环结束。,三种基本结构的共同特点,(1)只有单一的入口和单一的出口; (2)结构中的每个都有执行到的可能; (3)结构内不存在永不终止的死循环。,算法设计的目标,(1) 正确性。算法应满足具体问题的需求,这是算法设计最起码的目标。 (2) 可读性。一个算法设计完成后,并非仅供算法设计者个人使用,因此首先应让使用者能够理解、阅读与交流,其次才是机器执行。 (3

7、) 健壮性。当输入的数据非法时,算法应当能够做出适当的反应或进行处理,从而避免产生不可预料的输出结果。 (4) 高效率。所谓效率,是指算法执行的时间。对于同一个问题如果有多个可供选择的算法,应尽可能选择执行时间短的算法,这样的算法无疑效率是较高的。 (5) 低存储量需求。算法的存储量需求是指算法执行过程中所需的最大存储空间。对于同一个问题如果有多个算法可供选择,应尽可能选择存储量需求低的算法。,什么是程序设计语言?,什么是程序? 程序是为了用计算机解决某个问题而采用程序设计语言编写的一个指令序列 什么是程序设计语言? 语言的目的是用于通信 程序设计语言用于人与计算机之间的通信 程序设计语言是由

8、人使用但计算机可以理解的一种语言 程序设计语言用于编制程序,表达需要计算机完成什么任务和怎样完成任务,然后交给计算机去完成,程序设计语言填补了 人与计算机交流的鸿沟,计算机中使用多种“语言”,程序设计语言:主要用于描述算法 机器语言、汇编语言、高级语言 数据描述语言:主要用于描述数据(文档、音乐、图形、图像、视频等)的规范、结构和文件格式 HTML、XML、MIDI、MP3、OpenGL、JPEG、MPEG、 脚本语言:用于编写嵌入在文档中的程序的程序设计语言 VBA、VBScript、JavaScript 计算机通信语言(通信协议):用于描述计算机-计算机之间的会话(请求-应答)的语法和语义

9、 HTTP、POP3、SMTP、 FTP、 Telnet、TCP、IP、 数据库语言:用于数据操作,如SQL语言 ,程序设计语言的发展,要使计算机能够按人的意图工作,就必须使计算机懂得人的意图,接受人向它发出的命令和信息。计算机不懂人类的语言,人们要操纵计算机,就不得不使用特定的语言与之打交道,这种特定的语言就是计算机语言,又称为程序设计语言。 计算机语言也有其自身的发展过程,其出现的顺序是:机器语言、汇编语言、高级语言。,机器语言,机器语言是计算机惟一能够直接识别和执行的一种计算机语言,它是以二进制代码的形式表示的机器指令。 优点:计算机能直接识别、运行速度快、占用内存空间小。 缺点:直观性

10、差,难记、难写,非常容易出错;面向具体的机器,通用性差;需要人工分配内存,编程工作量大。 由于机器语言的缺点难以克服,给计算机的推广使用造成了很大的障碍。为此,人们设计出了便于记忆的助记符式语言,即汇编语言。,机器语言,用机器语言编程序, 也就是直接使用二进制代码编写程序,汇编语言,汇编语言是用一些便于人们记忆的符号来代替二进制数码,这些符号都是一些可以指明操作含义的英文单词(或其缩写),因此也叫助记符式语言。这种语言具有如下优缺点。 优点:运行速度快,占用空间小;易学、易懂、易查错、易修改 缺点:机器不能直接识别;面向机器,通用性差。,汇编语言,用助记符号来表示机器指令中的操作符与操作数,将

11、383传送到AX寄存器,将545传送到BX寄存器,将BX内容加AX内容,结果在BX中,将1055传送到AX寄存器,将AX内容减BX内容,结果在AX寄存器中,高级语言,高级语言,克服了低级语言的所有缺点。 优点:接近于自然语言;能精确地描述解决问题的过程;不依赖于具体的计算机指令系统;不需人工分配内存;运行速度慢,片用内存空间大;计算机不能直接识别和运行 尽管高级语言还有一定的缺点,但因为它的显著优点,所以才使计算机的推可能。目前,常用的高级语言有C语言、VC、VB、C#等。,高级程序设计语言,语言处理(翻译)程序,(1)汇编语言的翻译 用汇编语言编写的程序通常称为汇编语言源程序。这样的程序计算

12、机是不能直接识别和执行的,必须用相应的翻译程序(称为汇编程序)将汇编语言源程序翻译成机器能够执行的机器语言程序(称为目标程序),这个翻译过程叫做汇编。,语言处理(翻译)程序,(2)高级语言的翻译 编译方式:用相应语言的编译程序将源程序翻译成目标程序,再用连接程序将目标程序与函数库连接,最终生成可执行程序即可在计算机上运行。,语言处理(翻译)程序,(2)高级语言的翻译 解释方式:通过相应的解释程序将源程序逐句翻译成机器指令,并且是每翻译一句就执行一句。解释程序不产生目标程序,执行过程中某句有错误将立即显示出错误信息,以便用户修改后继续执行。,程序设计语言 :Fortran,Fortran是英文“

13、FORmula TRANslator”的缩写,译为“公式翻译器”,它是世界上最早出现的计算机高级程序设计语言,广泛应用于科学和工程计算领域。 FORTRAN语言以其特有的功能在数值、科学和工程计算领域发挥着重要作用。,程序设计语言 :Pascal与Delphi,Pascal是一个有影响的面向过程编程语言,由尼古拉斯沃斯在1968年9月设计,在1970年发行,作为一个小型的和高效的语言,意图鼓励使用结构化编程和数据结构进行良好的编程实践。 Delphi是一个集成开发环境(IDE),使用的核心是由传统Pascal语言发展而来的Object Pascal,以图形用户界面(Graphical User

14、 Interface,简称GUI)为开发环境,通过IDE、VCL工具与编译器,配合连结数据库的功能,构成一个以面向对象程序设计为中心的应用程序开发工具。,程序设计语言 : Basic, Visual Basic和VB.net,BASIC是Beginners All-purpose symbolic instruction Code(初学者通用符号指令代码)的缩写,是国际上广泛使用的一种计算机高级语言,它的特点是简单、易学。 1991年,Visual Basic 1.0问世,它允许程序员在一个所见即所得的图形界面中迅速完成开发任务。1998年发布的Visual Basic 6.0是传统Visua

15、l Basic中功能最全、应用最广的一个版本。 微软后来开发了VB的继任者Visual Basic .NET,同时也是.NET平台的一部分。,程序设计语言 : Java,Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE, JavaEE, JavaME)的总称。 Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。 随着Java芯片、Java OS、Jav

16、a解释和编译以及Java虚拟机等技术的不断发展,在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。,程序设计语言 :C,C+,C#,语言是一种结构化编程语言。 它层次清晰,便于按模块化方式组织程序,易于调试和维护。 C+ 是在C的基础上改进后的一种编程语言,主要是增添了许多新的功能,难度也比C大,和C一样侧重于计算机底层操作,也就是系统软件的开发。 C#是在C+的基础上再一次改进后的编程语言,但它实际上更接近于Java语言,还融合了VB等其它语言的特征,侧重于网络和数据库编程。,本章小结,本章主要介绍了软件的概念及其分类,重点介绍了操作系统的功能及目前流行的操作系统的特点;介绍了算法的基本概念,程序设计语言的发展过程,并分析了几种有影响的通用程序设计语言的功能与特点。,作业,第9章 计算机软件习题 9.2 同步练习 一、判断题 1、3、4、5、6、8、9 二、填空题 1、4、5 三、选择题 3、4,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1