PASCAL标准函数与过程.docx

上传人:b****5 文档编号:6594125 上传时间:2023-01-08 格式:DOCX 页数:11 大小:22.80KB
下载 相关 举报
PASCAL标准函数与过程.docx_第1页
第1页 / 共11页
PASCAL标准函数与过程.docx_第2页
第2页 / 共11页
PASCAL标准函数与过程.docx_第3页
第3页 / 共11页
PASCAL标准函数与过程.docx_第4页
第4页 / 共11页
PASCAL标准函数与过程.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

PASCAL标准函数与过程.docx

《PASCAL标准函数与过程.docx》由会员分享,可在线阅读,更多相关《PASCAL标准函数与过程.docx(11页珍藏版)》请在冰豆网上搜索。

PASCAL标准函数与过程.docx

PASCAL标准函数与过程

PASCAL中的函数又分为标准函数与自定义函数。

在这里只讲标准函数,标准函数是系统设置的函数,可以直接使用。

1.算术函数

函数标识符

自变量类型

意义

结果类型

abs

整型、实型

绝对值

同自变量

cos

整型、实型

余弦

实型

exp

整型、实型

指数

实型

int

整型、实型

整数部分

实型

ln

整型、实型

自然对数

实型

sin

整型、实型

正弦

实型

sqr

整型、实型

平方

同自变量

sqrt

整型、实型

平方根

实型

2.标量函数

函数标识符

自变量类型

意义

结果类型

odd

整型

判断奇数

布尔型

pred

离散类型

求前趋

同自变量

succ

离散类型

求后继

同自变量

3.转换函数

函数标识符

自变量类型

意义

结果类型

chr

byte型

自量对应的字符

字符型

ord

离散类型

自量对应的序号

longint

round

实型

四舍五入

longint

trunc

实型

截断取整

longint

1           绝对值函数ABS()例:

ABS(-3.14)=3.14ABS(6)=6

2           平方函数SQR()例:

SQR(4)=16SQR(-3)=9

3           开方函数SQRT()例:

SQRT(9)=3AQRT

(2)=1.414

4           正弦函SIN()例:

SIN(3.14)=0SIN(3.14/2)=1.0

5           余弦函数COS()例:

COS(3.14)=1.0COS(3.14/2)=0

6           以e为底数的指数函数EXP()例:

EXP(3)=e3

7           自然对数函数LN()例:

ln3=ln(3)

8           取整函数TRUNC(),其作用是将括号里的数的小数全部去掉 

       例:

TRUNC(3.14)=3TRUNC(4.79)=4TRUNC(-2.8)=-2

9           四舍五入取整函数ROUND(),

例:

ROUND(3.14)=3.14ROUND(4.8)=5ROUND(-3.2)=-3ROUND(-5.7)=-6

10       前导函数PRED(),其作用是对括号中的整数求其前面一个整数,或者对括号中的字符根据ASCII码表中的次序求其前面的一个字符例:

  PRED(3)=2PRED(123)=122PRED(‘C’)=’B’PRED(‘Z’)=’Y’

11       后继函数SUCC(),其作用是对括号中的整数求其后面一个整数,或者对括号中的字符根据ASCII码表中的次序求其后面一个字符例:

 SUCC(7)=8SUCC

(2)=3SUCC(‘A’)=’B’SUCC(‘Y’)=’Z’

12  奇函数的判别函数ODD()其作用是对括号中的整数进行判断,如果为奇数,则结果为真,否则为假

例:

ODD(7)=TRUEODD(4)=FALSE

    13 取字符函数CHR()其作用是将括号中的整数作为字符的序号,或称字符的ASCII码,并将与序号对应的字符作为结果写出来例:

CHR(65)=’A’CHR(66)=’B’CHR(97)=’a’

 14   取序号函数ORD()该函数是CHR()的逆函数,是根据字母求出其ASCII码例:

ORD(’A’)=65ORD('B')=66ORD('a')=97

ORD(CHR(65))=65CHR(ORD(‘A’))='A'

ORD(FALSE)=0ORD(TRUE)=1

4.杂类函数

Random

Random[n]{n是一个整型数,取值范围1~65535}

以上两个是随机函数,前者是产生随机小数,属实数型,产生0≤random<1的随机小数;后者是产生随机整数,属整数型,产生0≤random[n]≤n-1。

Randomize

是个随机化过程,在程序中它常用在随机函数之前,使之产生不同的系列的随机数。

如在随机函数之前不使用它,每次运行此程序将产生完全相同的系列的随机数。

***************************************

**************************************

Pascal常用的算术标准函数有19个:

(1)abs(x)求x的绝对值(|x|);

(2)exp(x)求ex的值;(e为无理数2.71828…)

(3)frac(x)求x的小数部分;

(4)int(x)求x的整数部分(不舍入,函数值为实型);

(5)ln(x)求以e为底的x的对数(logex);

(6)odd(x)判断x的奇偶数(当x为奇数时odd(x)值为true,否则为false);

(7)ord(x)求x的序号,结果为整型(x为有序类型量);

(8)piπ值(3.1415926535897932…);

(9)pred(x)求x(有序类型)的前趋值;

(10)succ(x)求x(有序类型)的后继值;

(11)random随机函数,产生0~1的随机值;

(12)random(n)产生0~n的随机数(n为word类型,先执行randomize,才能得到随机整数);

(13)round(x)求x的四舍五入整数;

(14)trunc(x)求x的整数部分(截掉小数部分,结果为整型);

(15)sqr(x)求x的平方值(x2);

(16)sqrt(x)求x的开平方根值();

(17)sin(x)求x的正弦函数(x为弧度);

(18)cox(x)求x的余弦函数(x为弧度);

(19)arctan(x)正切的反三角函数(x为数值);

Turbo Pascal过程与函数调用

下面是Turbo Pascal的标准过程。

Abs

语法      FunctionAbs(r:

Real):

Real;

FunctionAbs(r:

Integer):

Integer;

Abs返回参数的绝对值。

函数结果说明与参数类型(Real或Integer)相同。

Addr

语法      FunctionAddr(VarVariable);Pointer;

说明        Addr返回一变量,类型变量或过程的地址。

结果为指针类型     

Append

语法      ProcedureAppend(VarF:

Text);

说明      Append打开一文本文件以便添加,并将指针定在文件尾   

ArcTan

语法     FuntionArcTan(R:

Real):

Real;

说明     ArcTan返回参数的正切值。

Assign

语法    ProcedureAssign(VarF:

File);

说明    Assign将文件名Name赋给文件变量F。

BlockRead

语法  Procedure BlockRead(VarF:

File;

VarB    :

Type;

NumRecs  :

Integer;

VarRecsRead  :

Integer);

说明  BlockRead从无类型文件F中读出NumRecs个记录,放在缓冲区B。

BlockRead表示了实际读出的记录数。

注意,只有PC/MS—DOC版本支持BlockRead

BlockWrite

语法   Procedure BlockWrite(VarF:

File;

VarB    :

Type;

NumRecs:

Integer);

说明 BlockWrite从缓冲区B中读出NumRecs个记录写至无类型文件F中。

ChDir

语法 ProcedureChDir(S:

string);

说明 ChDir将当前目录换为S所表示的目录。

Chr

语法 Function Chr(I:

Integer);

说明 Chr返回出I序数值所对应的ASCII字符。

Close

语法 ProcedureClose(VarF:

File)

说明 Close为文件F清除缓冲区,并关闭该文件。

Concat

语法  FunctionConcat(S1,S2,…Sn):

String;

说明  Concat将任意多个字符串联在一起,返回所有字符串的联接,如果联接后的字符长度大于255,TurboPascal出现运行错误。

Copy

语法  FunctionCopy(S:

string;

                        P,L:

integer):

String;

说明  Copy返回字符串中第P个字符开始的L个字符。

Cos

语法 FunctionCos(R:

Real):

Real;

说明 Cos返回R的余弦值。

Cseg

语法 FunctionCseg:

word;

说明 Cseg返回程序代码段的段地址。

Dec

语法 ProcedureDec(Varx:

Scalar;

n:

LongInt);

说明 Dec是变量x减去n。

若省略n,则x减去1。

Delete

语法 ProcedureDelete(S:

String;

P,L:

Integer);

说明 Delete删除字符串S中从第P个字符开始的L个字符。

Dispose

语法 ProcedureDispose(P:

Pointer);

说明 释放由指针变量设定的堆存贮区域,Dispose与命令New联合使用。

Dseg

语法 FunctionDseg:

Word;

说明 Dseg返回程序中数据段的地址。

Eof

语法 FunctionEof(F:

File):

Boolean;

说明 当F文件指针到达文件尾时,Eof返回TRUE。

Eoln

语法 FunctionEoln(F:

File):

Boollean;

说明 当F文件指针到达一行的尾(由回车符和换行符表示)或文件尾时,Eoln返回TURE.

Erase

语法 ProcedureErase(F:

File);

说明 Erase删除磁盘文件,并从目录中删该目录项。

Exit

语法 ProcedureExit;

说明 Exit使程序从当前执行的块中退出。

Exp

语法  FunctionExp(R:

Real):

Real;

说明  Exp返回R的以e为底的幂。

FilePos

语法 FunctionFilePos(F:

File);Integer;

说明 FilePos返回文件F指针所指向的记录号。

FileSize

语法 FunctionFileSize(F:

File);Integer;

说明 FileSize返回F当前所含记录数。

FileChar

语法 ProcedureFillchar(Variable:

Type;

I,code:

Scalar);

说明 FileChar在以Variable为起始地址处用code写I个字节。

code可以是任意标量类型。

Flush

语法 ProcedureFlush(varF:

Text);

说明 Flush刷新用于输出文件F的全部磁盘缓冲区。

Frac

语法 FunctionFrac(R:

Real):

Real;

说明 Frac返回实数R的小数部分。

FreeMem

语法 ProcedureFreeMem(VarP:

Pointer;

I:

Integer);

说明 FreeMem释放与变量P相关的I个字节长度,并将释放的内存归还给堆,但该内存必须是已由Getmem设置过的。

GetMem

语法 ProcedureGetMem(VarP:

Pointer;I:

Integer);

说明 GetMem保留堆中I个字节,并贮存起始地址在变量P中。

Halt

语法 ProcedureHalt;

说明 Halt中断程序的执行。

Hi

语法 FunctionHi(I:

Integer):

Byte;

说明 Hi返回整数I的高位字节。

Inc

语法 ProcedureInc(Varx;n:

LongInt);

说明 Inc为变量x加上n的值(x+n)。

若参数表中缺省n,则x加1(x+1)。

Insert

语法 ProcedureInsert(Source:

string)

                       Var Target:

string;

                          Index:

Integer);

说明 Insert将字符串Source插入到字串Target的Index处。

Int

语法 FunctionInt(R:

Real):

Integer;

说明 Int返回实数R的整数部分。

IOresult

语法 FunctionIoresult:

word;

说明 IOresult报告执行当前输入输出操作的错误代码。

当Ioresult的值不为0时则表示有错误发生。

Length

语法  FunctionLength(S:

String):

Integer;

说明  Length返回字符串S的长度。

Ln

语法  FunctionLn(VarR:

Real):

Real;

说明  Ln返回实数R的自然对数。

Lo

语法  Lo(I:

Integer):

Byte;

说明  Lo返回整数I的低位字节。

Mark

语法   ProcedureMark(P:

Pointer);

说明   Mark贮存了当前堆顶端地址于指针P中。

MaxAvail

语法  FunctionMaxAvail:

LongInt;

说明  返回堆中自由空间的总长度。

MKDir

语法  ProcedureMKDir(S:

String);

说明  MKDir以字符串S命令建立一目录。

Move

语法  ProcedureMove(varv1,v2;

I:

Integer);

说明   Move可将变量V1中I个字节复制到变量V2中。

New

语法  ProcedureNew(VarP:

Pointer);

说明  New为指针P设置内存。

设置后,该变量可做为P引用。

Odd

语法  FunctionOdd(I:

Integer):

Boolean;

说明  当I为奇数时Odd返回TRUE,当I为偶数时返回为FALSE。

Ofs

语法  FunctionOfs():

Integer;

说明  Ofs返回任一变量,过程或函数的内存地址偏移量。

Ord

语法  FunctionOrd(S:

Scalar):

Integer;

说明  Ord返回任一有序变量的序值。

ParamCount

语法  FunctionParamCount:

word;

说明  ParamCount返回命令行的参数个数。

ParamStr

语法  FunctionParamStr(I:

word):

String;

说明  ParamStr返回命令行所指定的参数。

例如:

ParamStr

(1)返回第一个参数。

在DOS3.0以上版本中,ParamStr(0)返回执行文件的路径和文件名。

Pi

语法  FunctionPi:

Real;

说明  Pi返回数字常量。

设数据的精度依赖于是否用了8087。

Pos

语法  FunctionPos(Subs,S:

String):

Integer;

说明  Pos返回字串SubS在字符串S中的位置。

若S中未找到Subs,Pos返回值为0。

Pred

语法  FunctionPred(vars:

Scalar):

Integer;

说明  Pred返回任一有序变量的前继。

Ptr

语法  FunctionPtr(segment,Offset:

Integer):

Pointer;

说明  Ptr接受包含有段值和偏移量的一个整数,并将其变为—32位指针变量返回。

Random

语法  FunctionRandom(I:

word):

word;

FunctionRandom:

Real;

说明  Random返回TurboPascal产生的一个随机数。

若指定一个整数参数的话,Random返回一个大于或等于0,且小于该参数的整数,若不指定整数,Random返回一个大于或等于0,且小于1的实数。

Randomize

语法 FunctionRandomize;

说明 Randomize初始化随机数产生程序。

其基数存放在长整型变量Randseed中。

Read(Readln)

语法  ProcedureRead({VarF:

File,}Parameters);

  ProcedureReadln({VarF:

File,}Parameters);

说明  Read从标准输入设备或F定义的文件中读出数据。

Readln只适用于文本文件,其读入形式与Read相同,但读完一次数据后,Readln将文件指针移至下一个回车符/换行符处。

Release

语法  ProcedureRelease(VarP:

Pointer);

说明  Release释放由Mark命令所设置的内存。

用Mark于贮存指针P的堆地址。

Rename

语法  ProcedureRename(VarF:

File;

S:

String);

说明  Rename将文件F的文件名变为字符串S。

Reset

语法  ProcedureReset(VarF:

File{;I:

Integer});

说明  Reset打开文件F以便读文件。

如果F是无类型文件,可用I值指定记录的大小。

Rewrite

语法  ProcedureRewrite(VarF:

File{;I:

Integer});

说明  Rewrite打开一个文件准备写。

若文件不存在,TurboPascal创建一个文件。

若文件已经存在,则清除文件内容。

若是无类型文件,可用整数I说明记录大小。

RmDir

语法  ProcedureRmDir(S:

String);

说明  RmDir删除目录S。

Round

语法  FunctionRound(R:

Real):

LongInt;

说明  Round将实数R四舍五入取整并返回。

RunError

语法  ProcedureRunError;

      ProcedureRunError;(ErrorCode:

word);

说明  RunError停止程序执行并产生运行错误。

如果包含了ErrorCode,TurboPascal将按所出现的运行错误类型中断程序。

Seek

语法  ProcedureSeek(VarF:

File;P:

Integer);

说明  Seek将文件指针移至文件F的第P个记录的起点。

SeekEof

语法  FunctionSeekEof(VarF:

File):

Boolean;

说明  SeekEof,

SeekEoln

语法  FunctionSeekEoln(VarF:

File):

Boolean;

说明  SeekEoln与Eoln相似,只是在测试文件结束符前前者要跳过空格、制表符和文件结束。

结果类型为布尔型。

Seg

语法  Seg(VarVariable):

word;

      FunctionSeg():

word;

说明  Seg返回变量、过程或函数的段地址。

SetTextBuf

语法  SetTextBuf(Varf:

Text;VarBuf);

      ProcedureSetTextBuf(Varf:

Text;VarBuf;size:

word);

说明  SetTextBuf将文本文件赋以缓冲区buf。

若未指定缓冲区大小的话,缓冲区尺寸就是Buf。

Size可用做缓冲区尺寸缺省值。

Sin

语法 sin(R:

Real):

Real;

说明 Sin返回R的正弦值。

Sizeof

语法  FunctionSizeof(varVariable):

word;

说明  Sizeof返回一个变量或一个数据类型所需的字节数。

SPtr

语法 FunctionSPtr:

word

说明 SPtr返回堆栈指针寄存器(sp)的当前值。

Sqr

语法 FunctionSqr(R:

Real):

Real;

说明 Sqr返回R的平方值。

Sqrt

语法 FunctionSqrt(R:

Real):

Real;

说明 Sqrt返回R的平方根

Sseg

语法 FunctionSseg:

word

说明 Sseg返回堆栈段寄存器当前值。

Str

语法 Str(I:

Integer;[:

Length,]VarS:

String);

     ProcedureStr(R:

Real;[:

length:

Decimals,])VarS:

String);

说明 Str将一个实数或一个整数转换为一个字符串。

Succ

语法 FunctionSucc(S:

scalar):

Integer;

说明 Succ将任一标量值后移一个。

Swap

语法 FunctionSwap(I:

Integer):

Integer;

说明 Swap将一个整数的高位字节和低位字节交换,例如:

如果I等于00FFh,Swap返回FF00h。

Trunc

语法 FunctionTrunc(R:

Real):

Integer;

说明 Trunc返回R的整数部分,结果必须在合法的整数范围内。

Truncate

语法  ProcedureTruncate(Varf);

说明  Truncate在当前文件指针处强行结束文件,文件指针后的内容丢失。

Upcase

语法  FunctionUpcase(C:

char):

char

说明  如果C为小写字母Upcase返回C的大写值。

Val

语法  ProcedureVal(S:

String;VarR:

Real;VarCode:

Integer);

      ProcedureVal(S:

String;VarI:

IntegerVarCode:

Integer);

说明  Val将S转换为一个数字值(R或I)。

如果转换为成功TurboPascal置Code为0,如果失

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

当前位置:首页 > 医药卫生

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1