变量说明形式是:一个变量标识符或由逗号隔开的多个变量标识符在它的冒号\:\后面说明其数据类型。
在Turbo Pascal程序中,变量说明要写在变量说明部分中。 变量说明部分的一般形式: var
(变量说明1); (变量说明2);
??(变量说明n);
其中var是保留字,表示一个变量说明部分开始。一个var可以含有多个不同的变量说明,每个变量说明之间用分号隔开,有时称被分号隔开的变量说明为变量说明项。例如: var
x,y:real; chl:char;
t,f:boolean;
注意:不同类型的变量一般不能互相串用。
这里还应指出,变量一经说明系统就在计算机内存中为其分配一个存贮空间。在程序中使用到变量时,就在相应的内存中存入数据或取出数据,这种操作称为变量的访问。 标准数据类型
Pascal向程序设计者提供了丰富的数据类型,它们用于专门的目的,但却都是由简单的、非构造型的数据类型所构成的。本节介绍Turbo Pascal中最为基本的几种数据类型:整型、实型、布尔型和字符
型。它们都是系统定义的简单数据类型,称为标准数据类型,其对应的名字称为标准标识符。 1、整型
一个整型数据用来存放整数,整型数据可以是正整数、负整数和整数零。 Turbo Pascal中的整型常数必须按规定严格书写。 Turbo Pascal支持五种预定义整型,它们是短整型(Shortint)、整型(Integer)、长整型 (Longint)、字节型(Byte)和字类型(Word),每一种类型规定了相应的整数取值范围以及所占内存字节数(一个字节为8个二进制位)。因此,用户在具体编程定义变量类型时,要根据它们的特点选用适当的类型,以达到理想的效果。当两个不同范围类型的操作数进行运算时,得到的结果属于较大范围的类型。如下表所示。 Turbo Pascal语言规定可以对整型数据进行算术运算符+、一、*、Div、Mod。
它们分别表示加、减、乘、整除和取余。这五种运算,要求参加运算的两个数都是整型数,运算结果也是整型数。前三种运算与一般的算术运算加、减、乘相同。Div整除运算,是两个整型数相除取整数部分(商的整数部分),得到整型结果。Mod取余运算,是两个整型数相除取余数,余数的符号与被除数符号相同。例如:
3 Div 2 = 1 5 Div 7 = 0
6 Div (-4) = - 1 (-12) Div (-5) = 2 7 Mod 4 = 3 (14) Mod (-4) = 2 (-18) Mod (-6) = 0 6 Mod l7 = 6
由此可见,a Mod b,所得结果的符号与a相同,其值(绝对值)在0~∣b∣-1之间。运算符Mod与Div
之间有如下关系:
a Mod b = a – (a Div b) * b (b<>0)
其中Mod运算的结果的符号与a的符号相同。
利用以上两种运算可以对正整数进行分离。例如:
n为四位数8531,可用下法分离出它的个、十、百、千位。 8531 Mod l0 = 1 (个位数)
(8531 Mod l00) Div l0 = 3 (十位数) (8531 Mod l000) Div l00 = 5 (百位数) 8531 Mod l000 = 8 (千位数)
利用 a Mod b可以判断a能否被b整除。当a Mod b = 0时,a能被b整除。
2、实型
一个实型数据用来存放实数。实型数据可以是正实数、负实数和实数零。实型数据一般用小数或指数形式(亦称科学表示法)表示。例如:
+1993,33,3.5E+8(=3.5×105), -0.5E-3(=-0.5×10-3,),-20.0,,0.0等都是合法实型数。 Turbo Pascal支持一种预定义实型,它们是基本实型(Real)、单精度实型(Single)、双精度实型(Double)、扩展实型(Extended)和装配实型(Comp)。每一种类型规定了相应的实数取值范围和所占内存字节数,以及它们所能达到的精度,即有效数字位数。因此,用户在具体编程时应根据以上的参数适当选用,以达到最佳效果。如下表所示。
对于此类实型数据,若其绝对值大于上界,则产生上溢;绝对值小于下界,则产生下溢,下溢导致结果为0。Comp类型的取值范围是-263+1~238-1之间的整数,相当于十进制的-9.218~9.218。由于Comp类型的数据表示成二进制形式的数,这种类型的变量有时处理起来比较方便,特别对于数值很大的整数间的计算,这种数据类型很有用。
Turbo Pascal语言允许实型数使用下列运算符进行运算。 运算符:+、-、*、/ 分别表示加、减、乘和除。其中\叫实数除,即使两个整型数相除,其结果也总是实型,如: 7/2=3.5 6/3=2.0
3、字符型
用标准标识符Char标明字符型。字符型数据可以是字母、符号、数字(0-9)等ASCII码的所有字符。Turbo Pascal支持扩展ASCII码,共包括256个字符。但非印刷字符是不能在标准显示上显示或打印输
出。在计算机内部,字符集的元素是以该元素在字符集内的顺序位置来标记的,位置取值范围为0~255,我们称这些整数为字符在字符集内的序数值或序号。每个字符型数据在内存中占一个字节。将字符用单引号括起来,即成字符常数,如,’X’,’7’,’?’。字符常数可按字符的序数值确定大小关系,也就是说它们的大小由它们所对应的ASCII码值决定,如:’Y’,’Z’,’A’<’a’。
由于采用ASCII码,字符依ASCII码序号排列。这样,字符与ASCII码序号有一一对应的映射关系。 4、布尔型
一个布尔型数据用来存放逻辑值,或称布尔值。Turbo Pascal支持预定义布尔型,以标准标识符Boolean表示。Boolean一词,系根据19世纪英国数学家George boole (1815-1864)的名字而得,George
boole为现代布尔代数之父。布尔型数据的值只有两个:True(逻辑真)和False(逻辑假)。布尔型是顺序
类型,规定False 逻辑运算的结果只有两个:True(真)和False(假)。Turbo Pascal提供了六种关系运算符和四种逻辑运算符: =(等于)、<(小于)、<=(小于等于)、>(大于)、>=(大于等于)、<>(不等于) NOT(非)、AND(与)、OR(或)、XOR(异或) 运算关系 函 数 标准函数。Turbo Pascal语言提供了自变量为整型量的标准函数有顺序函数算术函数和转换函数等。 标准函数是Turbo Pascal语言预先定义的,它们实际上是能完成特定功能的称步子程序的程序段。每个标准函数都用一个标识符来标识,每个标准函数都能完成一个特定的功能,在程序中可以直接调用它们。Turbo Pascal语言中某些标准函数与数学中的函数有相似之处。 一、整数类型函数 整型是顺序类型,即所有的整型数都是按一定的顺序排列的。如3的后序数是4,350的后序数是351。以后介绍的布尔型、字符型、枚举类型和子界类型等都是顺序类型。顺序函数可以对顺序类型数据进行操作,但要注意它们自变量的取值范围。 ①前趋函数:Pred(x)函数值为x-l,例如: Pred (6)=5 Pred (-21)=-22 ②后继函数:Succ (x)函数值为x+l,例如: Succ (l5)=16 Succ (-114)= -113 ③绝对值函数:Abs (x)函数值为︱X︱,例如: Abs (-119)=119 Abs (101)=101 ④平方函数:Sqr (x)函数值为X2,例如: Sqr (-5)=,25 Sqr (l0)= 100 以上四个函数的结果仍是整型数。 ⑤奇函数:Odd (x),函数的结果为布尔型。当X为奇数时,函数值为true;当X为偶数时,函数值为false。例如: Odd (13)= True Odd (16)= False ⑥字符函数:Chr (X),函数值是序号的ASCII字符,属字符型。例如: Chr (65)=’A’ Chr (32)=’ ’ 二、实数类型函数 在下列算术函数中,X可以是实型或整型数的表达式。对于函数Abs和Sqr,其结果类型和变量X的类型相同,其他算术函数的结果类型都是实型。 绝对值函数Abs(x):函数值为x的绝对值 平方函数Sqr (x):函数值为x的平方 小数函数Frac (x):函数值为x的小数部分 整数函数Int (x):函数值为x的整数部分 正弦函数Sin (x):函数值为x的正弦,其申,的单位为弧度 余弦函数Cos (x):函数值为x的余弦,其中,的单位为弧度 指数函数Exp (x):函数值为了ex 对数函数Ln (X):函数值为x的自然对数 平方根函数的Sqrt (x):函数值为x的平方根 反正切函数Arctan(x):函数值为x的反正切,单位为弧度 随机函数Random:无自变量时,函数值取(0,1)间的随机小数;有自变量且为Word类型时,函数值取(0,自变量)间的随机整数。 三、字符类型函数 Turbo Pascal语言提供如下自变量为字符型的标准函数,其中Chr为字符型。 后继函数Succ (ch):例如,Succ (’8’)=’9’ Succ (’E’)=’F’ 对字符集的最后一个字符,Succ函数无意义。 前趋函数Pred (ch):例如,Pred (’7’)=’6’ Pred (’B’)=’ A’ 序数函数Ord (ch)::给出字符ch在ASCII字符集中的序号,结果为整型。 注意:Ord (’7’)<>7,正确的是:Ord (’7’)=Ord(’0’)+7=48+7=55 若ch是数字字符,则Ord (ch)-Ord ('0')是该数字字符的数值。例如:Ord (’7’)-Ord(’0’)=7 前面介绍的字符函数Chr (i)是Ord (ch)的逆函数。例如: Chr (55)= ’7’ Chr (Ord(’A’))=’A’ 三、布尔类型函数 Turbo Pascal语言提供布尔型函数主要是几个字符型函数。 Ord (B) 例如:Ord (false)=0 Ord (true)=1 表达式 运算是对数据进行加工处理的过程,得到运算结果的数学公式或其它式子统称为表达式。表达式可以是常量也可以是变量或算式,在表达式中又可分为:算术表达式、逻辑表达式和字符串表达式。 1、算术表达式: 算术表达式是最常用的表达式,又称为数值表达式。它是通过算术运算符来进行运算的数学公式。我们先来看Visual Basic中的算术运算符: 算术运算符 运算符 表达式 说 明 举 例 * X*Y 求X乘Y的值 6*7=42 / X/Y 求X除Y的值(浮点数运算) 2.76/1.2=2.3 div X div Y 求X除Y的整数商(对整型数计算) 25=5 Mod X mod Y 求X除Y的余数(对整型数运算) 25 mod 4=1 + X+Y 加法运算 32+2=34 - X-Y 减法运算 48-21=27 由于Visual Basic只能识别按其格式书写的数学表达式,所以必须将我们常用的数学表达式转换成Visual Basic表达式。例如: 数学式 Visual Basic表达式 2、逻辑运算 逻辑运算的结果只有两个:True(真)和False(假)。Visual Basic提供了六种关系运算符和四种逻辑运算符: =(等于)、<(小于)、<=(小于等于)、>(大于)、>=(大于等于)、<>(不等于) NOT(非)、AND(与)、OR(或)、XOR(异或) 运算关系 p q NOT p p AND q p OR q True True False True True True False False False True False True True False True False false True False False 例如:5>3 结果为 True, “a”>”b” 结果为False。 3、表达式的运算优先顺序 在进行表达式的转换过程中,必须了解各种运算的优先顺序,使转换后的表达式能满足数学公式的运算要求。运算优先顺序为: 括号→函数→乘方→乘、除→加、减→字符连接运算符→关系运算符→逻辑运算符 如果同级的运算是按从左到右次序进行;多层括号由里向外。 例: (10+6)*3^2*COS(1)/2*8+7 ① ④ ③ ⑤ ② ⑥ ⑦ ⑧ Sqrt(Abs(p/n-1))+1 ④ ③ ① ② ⑤ 2.1 Pascal字符与符号 1.标识符 (1) 标识符的定义:标识符就是以字母开头的字母数字序列,有效长度为63个字符,并且大小写等效。可以用来标示常量、变量、程序、函数等。例如例1.1中的Area(程序名),pi(符号常量),s、r(变量名)都是标识符。 (2) 标识符的分类: a.保留字(关键字) 所谓保留字是指在Pascal语言中具有特定的含义,你必须了解它的含义,以便于正确的使用,否则会造成错误。标准Pascal语言中的保留字一共有35个,Turbo Pascal语言一共有51个。下面是Pascal语言的保留字: AND,ARRAY,BEGIN,CASE,CONST,DIV,DO,DOWNTO,ELSE,END,FILE,FOR,FUNTION,GOTO,IF,IN,LABEL,MOD,NIL,NOT,OF,OR,PACKED,PROCEDURE,PROGRAM,RECORD,REPEAT,SET,THEN,TO,TYPE,UNTIL,VAR,WHILE,WITH等 b.标准标识符:指Pascal语言预先定义的标识符,具有特殊含义。 以下列举了Turbo Pascal语言部分常用的标准表识符: 标准常量 False Maxint True 标准类型 Boolean Char Real Integer
帕斯卡语言
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)