- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PASCA程序设计
第一章 PASCAL程序设计基础
我们日常工作、学习和生活中,要做某件事,如果事先没有计划,只是想一步做一步,是达不到理想效果的。要很好地、高效率地完成某件事,必须事先有一个计划,第一步做什么,下一步做什么,最后一步做什么。即先考虑好做这件事的所有步骤,然后按部就班地完成它。在计算机系统中,能完成某项任务的一系列指令或语句就是程序。程序设计是设计、书写和调试程序的过程。
第一节 程序设计语言及算法
一、程序设计语言
人们使用计算机,可以通过某种计算机语言与其交谈,用计算机语言描述所要完成的工作。为了完成某项特定任务用计算机语言编写的一组指令序列就称之为程序。编写程序和执行程序是利用计算机解决问题的主要方法和手段。程序设计语言是用来书写计算机程序的语言。程序设计语言经历了机器语言、汇编语言、高级语言到面向对象的程序设计语言等多个阶段。
1.机器语言
机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。它是计算机的设计者通过计算机的硬件结构赋予计算机的操作功能。机器语言具有灵活、直接执行和速度快等特点。
用机器语言编写程序,编程人员要首先熟记所用计算机的全部指令代码和代码的涵义。手编程序时,程序员得自己处理每条指令和每一数据的存储分配和输入 输出,还得记住编程过程中每步所使用的工作单元处在何种状态。这是一件十分繁琐的工作,编写程序花费的时间往往是实际运行时间的几十倍或几百倍。而且编出的程序全是些0和1的指令代码,直观性差,还容易出错。现在,除了计算机生产厂家的专业人员外,绝大多数程序员已经不再去学习机器语言了。
2.汇编语言
为了克服机器语言难读、难编、难记和易出错的缺点,人们就用与代码指令实际含义相近的英文缩写词、字母和数字等符号来取代指令代码(如用ADD表示 运算符号“+”的机器代码),于是就产生了汇编语言。汇编语言是一种用助记符表示的仍然面向机器的计算机语言。汇编语言像机器指令一样,是硬件操作的控制信息,因而仍然是面向机器的语言,使用起来还是比较繁琐费时,通用性也差。汇编语言是低级语言。
3.高级语言
20世纪50年代后期,在对低级语言的改进过程中,又研制出一种既接近于自然语言,又接近数学语言的程序设计语言。使用这种语言编写程序快捷方便,便于修改和高度,大大提高了编程的效率,同时这种语言编写的程序不依赖具体的机器,能用性好,我们称之为高级语言。用高级语言,不必考虑机器的结构和特点,可以集中精力考虑解决问题的算法,因此,高级语言也称为算法语言。
4.面向对象的程序设计语言
面向对象程序设计方法成为今后软件发展的主流,面向对象程序设计方法直接映射到人们对问题的认识上,提供了一种有目的地把系统分解为模块的策略,并将设计决策与客观世界的认识相匹配。 面向对象的程序设计语言更加直观,更加人性化。
二、算法
例1 写出你在家中烧开水的过程的一个算法。
我们用计算机模拟过程具体步骤可以表示为:
步骤1:往壶内注水;
步骤2:点火加热;
步骤3:观察:如果水开,则停止烧火,否则继续烧火;
步骤4:如果水未开,重复“3”直至水开。
这种对于解决问题的方法和步骤的描述就是算法。算法可以理解为由基本运算及规定的运算顺序构成的完整的解题步骤,或看成按要求设计好的有限的、确切的计算序列,并且这样的步骤或序列能解决一类问题。实际上,做任何事情都需要设计好工作的步骤和方法,例如,做广播体操、国家足球队的每一场比赛、举办奥运会、厨师炒菜,都是按一定的步骤进行的。做广播操的每一节动作的图解就是“广播体操算法”,举办奥运会的流程也是一个 “算法”。一个菜谱也是一个 “算法”,厨师炒菜就是实现这个算法。
三、算法描述
描述算法的方式是多种多样的,可以用文字(例如烧水);也可以用图示(例如广播体操图解);还可以用别的一些符号系统(例如音乐的乐谱)。
例2 已知两个整数a、b,计算这两个数的和的算法就可以用文字描述为:
步骤1:输入整数a、b;
步骤2:计算a+b的和;
步骤3:输出a+b的和;
用算法流程图来描述计算a+b的和的算法会更加直观。如图1.1所示。
开始根据S=a+b
开始
根据S=a+b
计算出S值
输出S
结束
图1.1计算a、b两个数和的算法
输入整数a,b
输入整数
a,b
我们看到流程图是用一些框图来表示算法中的一些功能块,流程图常用的符号如下表:
表1-1 常用流程图符号
框图名称
框图形状
框图意义
起始框/终止框
表示开始和结束
输入输出框
表示输入或输出
条件框
表示条件判断
处理框
表示要完成某种处理功能
连接点
把流程图中的不同部分或几张流程图连接起来
流程线
表示走向
画流程图时,先画出代表程序中功能块的一些处理框和条件框,并在其中写上解释性的文字,然后用流程线把这些框连接在
文档评论(0)