PASCAL语言基础
- 格式:doc
- 大小:147.50 KB
- 文档页数:12
一、初识Pascal语言一、Pascal 语言概述Pascal 语言是一种算法语言,它是瑞士苏黎世联邦工业大学的Niklaus Wirth教授于1968年设计完成的,1971年正式发表。
1975年对Pascal 语言进行了修改,作为“标准PASCAL语言”。
Pascal 语言是一种结构化的程序设计语言,可以用来编写应用程序。
它又是一种系统程序设计语言,可以用来编写顺序型的系统软件(如编译程序)。
它的功能强、编译程序简单。
二、Pascal 语言的特点Pascal语言有以下几个主要的特点:⒈它是结构化的语言。
Pascal语言提供了直接实现三种基本结构的语句以及定义“过程”和“函数”的功能。
可以方便地书写出结构化程序。
在编写程序时可以完全不使用GOTO语句和标号。
这就易于保证程序的正确性和易读性。
Pascal语言强调的是可靠性、易于验证性、概念的清晰性和实现的简化。
在结构化这一点上,比其它(如BASIC,FORTRAN77)更好一些。
⒉有丰富的数据类型。
Pascal提供了整数、实型、字符型、布尔型、枚举型、子界型、数组类型、集合类型、记录类型、和文件类型和指针类型。
⒊能适用于数值运算和非数值运算领域。
PASCAL的功能较强,能广泛应用于各种领域。
PASCAL语言还可以用于辅助设计,实现计算机绘图功能。
⒋ PASCAL程序的书写格式比较自由。
PASCAL允许一行写多个语句,一个语句可以分写在多行上,这样就可以使PASCAL程序写得格式优美,便于阅读。
三、Pascal语言程序的基本结构程序设计语言都有着一组自己的记号和规则。
PASCAL语言必须采用其本身所规定的记号和规则来编写程序。
下面我们首先来了解Pascal语言的程序基本结构。
Pascal语言的程序结构为:程序首部标号说明语句常量定义语句类型定义语句程序的说明部分变量说明语句函数和过程说明语句分程序程序体程序的执行部分先看一个简单的PASCAL程序:program exam1(input,output);var r,s,c:real;beginreadln(r);c:=3.14*2*r;s:=3.14*r*r;writeln(c,s)end.从这个简单的程序可以看到:1、一个PASCAL程序分为两个部分:程序首部和程序体(或称分程序)。
PASCAL语言程序设计第一部分语言基础知识一、程序结构:例1.1计算半径为R的圆面积S{程序首部} program Area;{说明部分——数据描述}const pi=3.14159;{常量定义}var s,r:real;{变量定义}{执行部分——程序体}Beginreadln(r);{读入数据给r}s:=pi*sqr(r);{求圆的面积}writeln('s=',s);{在屏幕上输出面积}end.上述程序第一行称为程序首部。
其中用花括号(注释可以用{ }或(* *)来表示)括起来的内容是注释,注释除了给人看,增加程序的可读性外,对程序编译和运行不起作用。
一个程序可以包含多个出现在不同处注释,亦可无注释。
程序第二行是常量说明,程序第三行是变量说明。
程序从begin到end 都是执行(语句)部分(1)程序首部例1.1的第一行称为程序首部。
program是保留字,接着是程序名(由你依据“标示符”规则自行定义),最后以分号表示程序首部结束,下面是程序主体的开始。
程序首部在一个Turbo Pascal(仅在Turbo Pascal中有效)程序中并非必须出现,它是可选的。
写上它仅起了文档作用。
因此,在时间有限的情况下,如果用Turbo Pascal编程完全可以省略程序首部。
(2)程序体a.说明部分说明部分用于定义和说明程序中用到的数据,由单元说明、标号说明、常量说明、类型说明、变量说明、函数或过程说明组成,并且这些数据的说明次序必须按照以上次序。
但是一个简单的Turbo Pascal程序也可以不包含说明部分,也就是说说明部分是可选的。
b.执行部分执行部分描述了程序要执行的操作。
它必须以一个Turbo Pascal保留字begin开始,以保留字end后跟句点结束,其间是一些执行具体操作的语句,并且以分号作为语句之间的分隔符。
begin 和end必须成对出现,这是一个Turbo Pascal 程序所必须有的。
Pascal 语言入门篇一、 引入:程序一:已知长方形的长、宽,求长方形的周长program circle; 该程序的首部,program 是保留字 var chang,kuan,zhouchang:real; 定义变量:设定长,宽,周长为实数类型 begin 开始语句readln(chang); 读语句,读入长(chang)和宽(kuan) readln(kuan);zhouchang:=2*(chang+kuan); 赋值语句,将计算结果赋给zhouchang write(zhouchang); 写语句,将结果(zhouchang ) end. 结束语句,与begin 成对出现程序二:已知长方形的长、宽,求长方形的周长,并求出长方形的面积。
rogram circle;var chang,kuan,zhouchang,mianji :real; beginreadln(chang); readln(kuan);zhouchang:=2*(chang+kuan); mianji:=chang*kuan; write(zhouchang ,mianji ); end.小结:一个完整的pascal 程序结构 Program 程序名(程序参数表); const常量说明;var变量说明;Begin语句; 语句;……End.思考练习:1、已知长方体的长、宽、高,求长方体的表面积及体积。
2、已知正方体的边长,求正方体的表面积及体积。
3、已知圆半径,求圆的周长及面积。
程序说明部分程序语句主过程二、读写语句读语句一:read用于在程序执行时,从外部输入数据给变量一般形式:read(变量表) 其中变量表是一些由逗号分开的变量x,y是整型,我们从键盘上输入就必须是整型数,例如:14、-6,而不能是实型数,例如:1.9、98.0;而z是实型数,输入可以是小数也可以是整数,例如:2.36666 ,或者是10。
读语句二:readln在完成该语句的最后一个变量值的输入以后,将结束包括这个数据值的输入行,使下一个read语句(或readln语句)从下一个新行开始输入数据。
第一章、什么是计算机语言计算机语言是计算机软件中非常独特的一部份,它属于系统软件,但又和应用软件息息相关。
它的作用是:使人类能够用某些命令、指令去让计算机为人类进行数值、逻辑运算。
计算机语言中,只有一种语言是计算机能自己识别的,就是最底层、最难的机器语言,这是一般人类所无法接受的语言,所以在此基础上,人们发展出了许多高级的语言,这些语言的共同特点是:人类无需去掌握高深的机器语言,只要掌握这些更容易理解、更贴近人类的高级语言,用高级语言编出程序后,再由语言解释、编译系统去把程序解释、编译成机器语言让计算机去执行。
目前最常用的高级语言大致有以下几种:BASIC语言:是一般计算机入门者的首选语言,命令少,容易掌握,从BASIC,BASICA,GWBASIC,TRUE BASIC,TURBO BASIC,QUICK BASIC等一直发展到目前的WINDOWS环境下的VB。
PASCAL语言:最适合科学计算、数据处理的语言,运行、编译速度最快,从TURBO PASCAL 5 .5, 6.0, 7.0一直到现在的WINDOWS环境下的DELPHI以及LAZARUS等面向对象的PASCAL,以及目前信息学竞赛使用的FREE PASCAL各个版本。
C语言:主要适用于应用软件的开发,是计算机人员的必修课,但在算法实现、建模方面不如PASCAL方便。
从C,C++,一直到现在的WIONDOWS环境下的VC、C++等。
实际上,我们日常所用的各种软件,包括Windows,WORD、EXCEL、各种游戏等等,全部都是使用程序设计语言编写出来的软件,我们只有掌握了程序设计语言,才能进行计算机软件的开发。
在我们的信息学竞赛中,所有的题目都是非常复杂的数值与逻辑运算,所以世界上广泛采用PASCAL语言作编程工具,我们采用的是FREE PASCAL2.0版本或者相近版本。
我们学习信息学竞赛除了要掌握程序设计语言,能够使用程序设计语言编写程序外,还有一部分要掌握的更加重要的内容就是——算法设计,它能够使我们的程序运行速度更快、效率、精度更高,使我们的程序取得快人一步的优势,算法设计在本书中我们将接触一部分。
第二章、PASCAL语言入门第一节、PASCAL语言的特点以法国数学家命名的PASCAL语言是世界上使用最广泛,最有效的语言之一。
其主要特点是:严格的结构化形式;丰富完备的数据类型;运行能力、效率高;查错能力强等等。
与BASIC、C等语言相比,PASCAL语言更适合科学计算,运行速度最快,编译能力最强,编译成的可执行文件也最小。
PASCAL语言是编译执行的语言(BASIC语言是解释执行),因此在速度与效率上都比BASIC语言提高了一个档次。
所谓解释执行,是在程序环境下编写好程序后,执行它时是一句一句地由语言解释器翻译成机器语言,由计算机去执行,计算机能在程序编辑时就发现程序中错误,但程序运行速度慢;而编译执行是在程序环境中编写好程序后,执行时先由编译器把整个程序编译成机器语言,然后再由计算机执行,计算机必须在编译程序时才能发现程序中的错误,但程序运行速度快。
第二节、FREE PASCAL的集成环境一个题目,如果用PASCAL语言来解,在建立好数学模型及完成一定的自然语言描述后,就用PASCAL语言来编辑出程序,编译后再运行(可以作为一个过程),这样才能得到答案。
FREE PASCAL提供了一个功能非常强大的集成环境,我们可以利用它来完成上述所有过程。
进入这个环境的方法很多,可以根据实际情况自己进入。
进入集成环境后屏幕上显示如用键盘选择菜单的方法是:按F10,激活菜单后,用光标键来选择;或是直接用ALT健加菜单的第一字母,如ALT+F,即能调出FILE菜单。
另外,我们也可用鼠标来调用菜单,操作方法与其它软件一样。
功能健中定义了:F1可得到帮助;F3打开一个已存盘的程序文件;ALT F9 编译当前程序;F9把当前程序编译成EXE(可执行)文件,ALT F10打开菜单,当然,还有一些功能键并没有在这里显示,在后面的学习中我们将逐个涉及,大家自己也可以从菜单中发现。
第三节、一个PASCAL程序一、进入编辑状态:选择菜单[FILE][OPEN](今后涉及到菜单调用时,均以此格式表示,即选择FILE菜单中的OPEN功能)功能,打开一个程序文件,在输入文件名时,输入文件的主名即可进入程序编辑状态。
这时可用编辑功能健:光标键:用以上下左右移动光标位置;INSERT:插入/改写状态切换;TAB;光标跳至下一制表位;CAPSLOCK:大小写切换;DELETE:删除光标位一字符;BACKSPACE:删除光标前一字符;CTRL+Y:删除光标处一行;HOME:光标跳至行首;END:光标跳至行未;PAGEUP:上翻一页;PAGEDOWN:下翻一页;ENTER:回车/换行;二、编辑一个PASCAL程序:[例1、1]输出一句话的小程序:program Q1;beginwriteln(‘You are welcome to the PASCAL world !’);end.请在编辑状态下编辑输入上述程序,第一行为程序开头,程序名(这一行并不是必须的,今后的程序中我们会经常省略之一行);第二行BEGIN表示程序开始,最后一行END表示程序结束;WRITELN()语句把括号中单引号中的的字符打印在屏幕上;记住,一般每行以分号“;”结束,但END后以句号“.”结束,而BEGIN后没有标点符号。
即:除BEGIN外,每一句PASCAL语句后均有分号或句号,只有程序的最后一个END后才用句号,而其它任何行未都是分号!!!三、在集成环境中运行程序:上述程序[例1、1]编辑好后,如果要运行,只需选择菜单[RUN][RUN]命令(或CRTL+F9),如果程序正确的,就会在屏幕(这个屏幕叫程序输出屏幕)上显示:You are welcome to the PASCAL world !但是我们看到,输出屏幕上显示的结果一闪而过就又回到了集成环境屏幕显示,我们几乎看不到在屏幕上显示的结果,要查看刚才的屏幕显示,只需选择菜单[RUN][USER SCREEN](或ALT+F5),就又能回到输出屏幕,敲任意键又回到集成环境中。
如果程度出错,则程序没有被运行完就会回到集成环境中,并且光标停在错误的这一行,在编辑窗口中的第一行还会显示出错信息,如:Run-time error 错误代码 at 错误发生地址四、保存文件把当前编辑的程序文件以当前名存盘,只需运行菜单命令[FILE][SAVE](或F2),即可。
五、关闭当前文件当前文件不想现在再编辑了,可把它关闭掉,即运行菜单命令[WINDOWS][CLOSE](或ALT+F3),即可。
六、打开已有文件欲打开一个已经存在的程序文件,运行菜单命令[FILE][OPEN](或F3),再按TAB键去选择或不按TAB键而直接输入文件名即可。
七、练习此行可以不输入在集成环境中输入以下程序,程序的作用是计算圆的面积,圆的半径由用户从键盘输入,编辑运行正确后请存盘:program area_of_cicle;const pi=3.1416;var s:real;r:integer;beginwriteln(‘Please input radius :’);readln(r);s:=pi*r*r;writeln(‘s=’,s);end.运行举例:Please input radius:5s=7.854000000E+01第三章、PASCAL语言程序基本概念第一节、PASCAL程序的组成我们仍以上述程序为例:[例2、1]program area_of_cicle;const pi=3.1416;var s:real;r:integer;beginwriteln(‘Please input radius :’);readln(r);s:=pi*r*r;writeln(‘s=’,s);end.每一个PASCAL程序都由程序头部和程序主体组成,最后以“end.”作为整个程序的结束。
一、程序头部程序头部毫无疑问是在程序的开头位置,以“program”这个词开始(但经常省略这一),以第一个BEGIN的前一行结束,中间每行后均有分号。
以CONST为开始的部分是说明程序中要用到的常量,以VAR为开始的部分是说明程序中要用到的变量。
即程序中要用到的所有的常量及变量,我们必需在程序首部加以说明其名称及类型。
这些我们将在稍后讲到。
二、程序主体以第一个BEGIN开始,以最后一个END结束,中间即为程序命令行,每一行均以分号结束!第二节、PASCAL的数据类型计算机存储数据时,1个字节等于8位,即:1BYTE=8BIT。
PASCAL语言的常量与变量都必须在程序头部先加以说明,即说明常量、变量的的名称及数据类型。
PASCAL语言的数据类型很多,最常用的有以下几种:一、整数类型(没有小数部分)INTEGER:取值范围[-32768,32767]。
占用内存2个字节(16位)。
WORD:取值范围[0,65535]。
占用内存2个字节(16位)。
BYTE:取值范围[0,255]。
占用内存1个字节(8位)。
LONGINT:取值范围[-2147483648,2147483647]。
占用内存4个字节(32位)。
SHORTINT:取值范围[-128,127]。
占用内存1个字节(8位)。
二、实数类型REAL:取值范围[2.9E-39,1.7E+38]。
占用内存6个字节(48位)。
实数的表示法有两种:1、直接表示,如:-0.4576, 123.567, -234, 02、科学计数法,如:1.234E-4, -3.546E12表示1.234乘10的负4次方;-3.546乘10的12次方。
三、字符类型CHAR:单字符型,即取1个字符,如‘A’,‘1’。
STRING:字符串型,即多个字符,如‘ABCD!123’,‘%¥#DS12’。
如果一个常/变量只要用到1个字符,则可把它定义成CHAR型;如果是多个字符,但不知确切多少个,则定义成STRING型,如果知道确切有N个字符,则定义成STRING[N]型,例如STRING[5],则表示定义的这个字符串变量由5个字符组成。
字符串在PASCAL中使用都是加上单引号。
四、布尔型BOOLEAN:布尔型即为逻辑型,取值为TRUE、FALSE,即真、假。
第三节、常量、变量、标准函数和表达式一、常量和变量常量:程序运行过程中,其值不会改变的量,称为常量。
在程序头部中说明,以CONST 引导。
变量:程序运行过程中,其值可改变的量,称为变量。
在程序头部中加以说明,以VAR 引导。
如,在[例2、1]中说明的常量PI,变量S、R。
二、标准函数PASCAL语言提供数量非常大的标准函数供我们使用,这些函数有些可以直接调用,有些放在另外的单元(UNIT)中。