1、第1章 程序设计程序设计与与算法算法学习目标学习目标 了解为什么要学习程序设计 了解算法的概念和描述 了解程序、程序设计以及程序设计语言的概念 了解什么是RAPTOR以及它具有的特点目录为什么要学习程序设计为什么要学习程序设计 认识算法认识算法 程序设计程序设计RAPTOR简介简介为什么为什么要学习程序要学习程序设计设计 作为一名优秀的技术工作者,不懂计算机程序设计,就不能真正理解计算机,也无法在自己所从事的工作领域内深入地应用计算机。对于高等学校的学生来说,了解计算机科学,使计算机成为一种可以帮助人们思维的工具,显得尤为重要。而程序设计是实践计算思维的重要手段之一。目录为什么要学习程序设计为
2、什么要学习程序设计 认识算法认识算法 程序设计程序设计RAPTOR简介简介认识认识算法算法1.2.11.2.1什么是什么是算法算法算法的基本算法的基本条件条件02 02 0303算法的描述算法的描述工具工具 广义地说,为解决一个问题而采取的方法和步骤,就称为“算法”。当代著名计算机科学家D.E.Knuth在他撰写的The art of computer programming一书中写到:“一个算法,就是一个有穷规则的集合,其中的规则规定了一个解决某一特定类型的问题的运算序列。”通俗地说,算法规定了任务执行/问题求解的一系列步骤。算法中的每一步必须是“明确的、可执行的”。什么什么是算法是算法什么
3、是算法什么是算法【例1-1】求1+2+3+10的累加和方法一:步骤1:先求1与2的和,得到结果3;步骤2:将步骤1得到的和与3相加,得到结果6;步骤9:将步骤8得到的和与10相加,得到结果55。方法二:步骤1:分别求1与10的和,2和9的和,3与8的和,4与7的和,5与6的和;步骤2:求5个11的和,得到结果55。算法的基本条件算法的基本条件一个有效算法应该具备以下几个条件:输入 输出 确定性 有穷性 有效性算法的描述工具算法的描述工具 自然语言 流程图 N-S图 伪代码 计算机语言描述自然语言描述 用自然语言描述算法,就是用人们日常使用的语言描述或表示算法的方法。优点:容易理解和掌握;缺点:
4、存在着很大的缺陷,就是容易出现二义性。PPT模板下载: 流程图描述 流程图是最早出现的用图形表示算法的工具,它利用几何图形的框代表各种不同性质的操作,用流程线指示算法的执行方向 优点:直观形象、易于理解,能较清楚地显示出各个框之间的逻辑关系和执行流程。PPT模板下载: 例如:利用欧几里得例如:利用欧几里得算法求解两个正整数的算法求解两个正整数的最大公约数最大公约数用用流程图流程图描描述述如下如下:N-S图描述 1973年美国学者I.Nassi和B.Shneiderman提出了一种新的流程图形式。在这种流程图中,完全去掉了带箭头的流程线。全部算法写在一个矩形框内,在该框内还可以包含其他从属于它的
5、框,或者说,由一些基本的框组成一个大的框。PPT模板下载: 例如:利用欧几里得例如:利用欧几里得算法求解两个正整数的算法求解两个正整数的最大公约数最大公约数用用N-SN-S图图描述描述如下如下:伪代码描述 伪代码是一种与程序设计语言相似但更简单易学得用于表达算法的语法。程序表达算法的目的是在计算机上执行,而伪代码表达算法的目的是给人看。伪代码应该易于阅读,简单和结构清晰,它是介于自然语言和程序设计语言之间的。伪代码不拘泥于程序设计语言的具体语法和实现细节。PPT模板下载: 伪代码描述PPT模板下载: 例如:利用欧几里得算法求解两个正整数的最例如:利用欧几里得算法求解两个正整数的最大公约数大公约
6、数用用伪代码伪代码描述描述如下如下:Input:正整数m、nOutput:m、n的最大公约数GREATEST-COMMON-DIVISOR(m、n)1 REPEAT2 rm mod n3 mn4 nr5 UNTIL r=06 RETURN m计算机语言描述 计算机是无法识别流程图和伪代码的,只有用计算机语言编写的程序才能被计算机执行。因此在用流程图或伪代码描述出一个算法后,还要将它转换成计算机语言程序。PPT模板下载: 计算机语言描述PPT模板下载: 例如:利用欧几里得算法求解两个正整数的最例如:利用欧几里得算法求解两个正整数的最大公约数大公约数用用C C语言语言描述描述如下如下:int Ma
7、xCommonFactor(int m,int n)/MaxCommonFactor()函数,功能是计算两个正整数m、n的最大公约数,默认mn int r;do r=m%n;m=n;n=r;while(r)return m;目录为什么要学习程序设计为什么要学习程序设计 认识算法认识算法 程序设计程序设计RAPTOR简介简介程序设计程序设计0101程序程序程序设计程序设计02 02 0303程序设计语程序设计语言言程序程序“程序”通常指完成某些事务的一种既定方式和过程。在计算机领域,程序是为实现特定目标或解决特定问题而用计算机语言编写的命令序列的集合,是人们求解问题的逻辑思维活动的代码化描述。程
8、序表达了人的思想,体现了程序员要求计算机执行的操作。程序程序 对于计算机而言,程序是计算机的一组机器指令,它是程序设计的最终结果。程序经过编译和执行才能最终完成程序的功能。对于使用计算机的人而言,程序员用某种高级语言编写的语句序列也是程序。程序通常以文件的形成保存起来,所以源文件、源程序和源代码都是程序。程序设计程序设计 什么是程序设计?使用计算机解决实际问题,通常是先要对问题进行分析并建立数学模型,然后考虑数据的组织方式和算法,并用某种程序设计语言编写程序,最后调试程序,使之运行后能产生预期的结果,这一过程称为程序设计。程序设计程序设计 程序设计的基本目标 是实现算法和对初始数据进行处理,从
9、而完成问题的求解。学习程序设计的目的不只是学习一种特定的程序设计语言,而是要结合某种程序设计语言学习程序设计的思想和方法。程序设计程序设计 程序设计的基本过程 分析所求解的问题 抽象数学模型 设计合适的算法 编写程序 调试运行直至得到正确结果程序设计程序设计语言语言 程序是用某种语言来描述的 程序设计也是要用到某种语言来设计程序 程序设计语言是人与计算机进行交流的工具。程序设计程序设计语言语言 程序设计语言的发展,经历了机器语言、汇编语言和高级语言等几个阶段。高级语言是一种用接近自然语言和数学语言的语法、符号描述基本操作的程序设计语言,消除了机器语言的缺点,使得普通用户容易学习和记忆,因此简单
10、易学。常用高级语言到现在有几百种,如C、C+、Python、Java、HTML等。目录为什么要学习程序设计为什么要学习程序设计 认识算法认识算法 程序设计程序设计RAPTOR简介简介RAPTORRAPTOR简介简介0101什么是什么是RAPTORRAPTOR为什么使用为什么使用RAPTORRAPTOR02 02 0303RAPTORRAPTOR的的特点特点什么是什么是RAPTORRAPTOR RAPTOR Rapid Algorithmic Prototyping Tool for Ordered Reasoning是一种基于有序推理的快速算法原型设计工具。它是由各种相互连接的图形符号构成的可
11、执行流程图,为程序设计和算法设计的基础课程的教学提供实验环境而且为使用者提供了一个可视化程序设计环境,并且可以直接转换成为C+、C#、Java等语言。为什么使用为什么使用RAPTORRAPTOR使用RAPTOR进行程序设计基于以下几个原因:由各种相互连接的图形符号构成的可执行流程图,最大程度地减少了程序语言的语法理解;操作简单,学生只需要通过拖拽操作就可将不同图形符号放置到所需要的位置上,工具软件就可以自动将这些不同图形符号连接在一起,形成一个完整的流程图;为什么使用为什么使用RAPTORRAPTOR 简单易懂,由于流程图与自然的思维过程相近,能够比较简单地让学生掌握和理解程序的设计与算法。R
12、APTOR除了具有流程图特色外,还具有其它诸多重要特点,例如,计算操作的原子化和算法的执行步骤统计等,为算法设计、算法优化,算法复杂性分析提供了有力的实验或验证手段。RAPTORRAPTOR的特点的特点 语言简单、紧凑、灵活(6个基本语句符号)。具备基本运算功能,有18种运算符,可以实现大部分基本运算;具备基本数据类型与结构,提供了数值、字符串和字符3种数据类型以及一维数组、二维数组等数据组织形式,可以实现大部分算法所需要的数据结构,包括堆栈、队列、树和图;RAPTORRAPTOR的特点的特点 具有严格的结构化的控制语句;语法限制宽松、程序设计自由度大;可移植性好,程序的设计结果可以直接执行,也可以转换成其他高级语言,如C、C+、C#等;程序的设计结果可以直接编译成为可执行文件并运行;支持图形库应用,可以实现计算问题的图形表达和图形结果输出;RAPTORRAPTOR的特点的特点 支持面向过程和面向对象的程序和算法设计;具备单步执行、断点设置等重要的调试手段,便于快速发现问题和解决问题。本章本章小结小结 本章内容主要涉及程序设计的一般性概念,包括程序、程序设计、程序设计语言、算法以及程序设计的方法。通过对这些问题的介绍,为今后更好学习程序设计打下基础。由于RAPTOR是一种基本功能完备而又十分简洁的算法描述性程序设计环境,对于程序设计入门学习极为有利。
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。