pascal函数
    PASCAL内自带的函数?通常可以直接调用?特殊的需要调用数据库?如?used math 目录
    一、数学函数与过程
    二、字符串函数与过程
    三、标准函数
    四、各单元的函数与过程
    展开
    一、数学函数与过程
    过程?
    inc(i) 使i:=i+1;
    inc(i,b) 使i:=i+b;
    dec(i) 使i:=i-1;
    dec(i,b) 使i:=i-b;
    randomize 随机数的种子函数?在每次设置随机数时都要把这个函数放在最前面。
    函数?
    abs(x) 求x的绝对值。例?abs(-3)=3 x为整数
    chr(x) 求编号x对应的字符。例?chr(65)='A' chr(97)='a'
    chr(48)='0' x为非负整数
    ord(x) 求字符x对应的编号。例?ord(‘A')=65 ord(‘a')=97 另外?
    ord(false)=0 ord(true)=1 x为字符或数字或布尔量
    sqr(x) 求x的平方。例?sqr(4)=16 x为整数
    sqrt(x) 求x的正根。例?sqrt(16)=4 (ps?负数是不能进行运算的?如果需要就要先取绝对值?sqrt(-4)是错的?应该为sqrt(abs(-4))结果为实数
    round(x) 求x的四舍五入。例?round(4.5)=5 x实数
    trunc(x) 求x的整数部分。例?trunc(5.6)=5 结果是integer型 x为实数
    int(x) 求x的整数部分。例?int(5.6)=5.0 结果是real型 x为实数
    frac (x) 求x的小数部分。例?frac(5.6)=0.6 x为实数
1/12页
    pred(x) 求x的前导。例?pred(‘b')='a' pred(5)=4 pred(true)=false x为字符或数字或布尔量
    succ(x) 求x的后继。例?succ(‘b')='c' succ(5)=6 succ(false)=true x为字符或数字或布尔量
    odd(x) 判断x是否为奇数。如果是值为true?反之值为false。例?odd(2)=false odd(5)=true x为整数
    power(a,n) 求a的n次方。例?power(2,3)=8 {只有在开启math库时才可以使用}a,n为整数?但是不能求高精度数
    random(n) 取0~n-1之间的随机数(不能取到n) 。n为整数
    max(x,y):返回x和y中的较大值。x,y整数
    min(x,y):返回x和y中的较小值。x,y整数
    二、字符串函数与过程
    1. 连接运算?函数? concat(s1,s2,s3„sn) 相当于s1+s2+s3+„+sn。
    例?concat('11','aa')='11aa';
    2. 求子串。 ?函数?Copy(s,I,L) 从字符串s中截取第I个字符开始?长度为L的子串。
    例?copy('abdag',2,3)='bda'
    3. 删除子串。?过程? Delete(s,I,l) 从字符串s中删除第I个字符开始?长度为l的子串。
    例?s:='abcde';delete(s,2,3);结果s:='ae'
    4. 插入子串。 ?过程?Insert(s1,s2,I) 把s1插入到s2的第I个位置。
    例?s:='abc';insert('12',s,2);结果s:='a12bc'
    5. 求字符串长度 ?函数?length(s) 。
    例?length('12abc')=5
    6. 搜索子串的位置 ?函数?pos(s1,s2) 如果s1是s2的子串 ?则返回s1的第一个字符在s2中的位置?若不是子串?则返回0。
    例?pos('ab','12abcd')=3
    7. 字符的大写转换。?函数?Upcase(ch) 求字符ch的大写体。
    例?upcase('a')='A'
    8. 数值转换为数串。 ?过程?Str(x,s) 把数值x化为数串s。
    例?str(12345,s); 结果s='12345'
    9. 数串转换为数值。 ?过程?val(s,x,I) 把数串s转化为数值x,如果成功则I=0,不成功则I为无效字符的序数。
    例?val('1234',x,I);结果 x:=1234
    三、标准函数
2/12页
    标准函数。Turbo Pascal语言提供了自变量为整型量的标准函数有顺序函数算术函数和转换函数等。
    标准函数是Turbo Pascal语言预先定义的?它们实际上是能完成特定功能的称步子程序的程序段。每个标准函数都用一个标识符来标识?每个标准函数都能完成一个特定的功能?在程序中可以直接调用它们。Turbo Pascal语言中某些标准函数与数学中的函数有相似之处。
    一、整数类型函数
    整型是顺序类型?即所有的整型数都是按一定的顺序排列的。如3的后序数是4?350的后序数是351。以后介绍的布尔型、字符型、枚举类型和子界类型等都是顺序类型。顺序函数可以对顺序类型数据进行操作?但要注意它们自变量的取值范围。
    ?前趋函数?Pred(x)函数值为x-l?例如?
trunc函数截取整数
    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)函数值为X*X?例如?
    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 (66)=’B’
    二、实数类型函数
    在下列算术函数中?X可以是实型或整型数的表达式。对于函数Abs和Sqr?其结果类型和变量X的类型相同?其他算术函数的结果类型都是实型。
    绝对值函数Abs(x)?函数值为x的绝对值。
    平方函数Sqr (x)?函数值为x的平方。
    小数函数Frac (x)?函数值为x的小数部分。
    整数函数Int (x)?函数值为x的整数部分。
    正弦函数Sin (x)?函数值为x的正弦?其中?的单位为弧度。
    余弦函数Cos (x)?函数值为x的余弦?其中?的单位为弧度。
    指数函数Exp (x)?函数值为e^x。
    对数函数Ln (X)?函数值为x的自然对数。
3/12页
    平方正根根函数的Sqrt (x)?函数值为x的平方正根。注意?sqrt的值参x即使是整数?返回值也是实数。如果要取整?要用函数trunc?在“数学函数与过程”里已经说明?这里不再说明?
    反正切函数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。
    四、各单元的函数与过程
    SYSTEM TP的运行库?包括常用的标准函数和过程?可以在程序中直接使用?不需USES语句说明。
    DOS 具有日期、时间、目录查、程序执行等功能
    CRT 具有屏幕模式控制、扩展键盘码、颜、窗口、声音等功能
    PRINTER
IORESULT F 返回最后一次输入/出操作的结果状态
    LENGTH(S) F 取字符串的长度
    LN(R) F 求自然对数
    LO(I) F 返回一个变量的低位字节
    MAXAVAIL F 返回最大内存空间
    MEMAVAIL F 返回可用内存数目
    MKDIR(PATH) P 建立一个子目录
    MOVE(S,D,LEN) P 快传送
    NEW(P) P 建立一个新的动态变量

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。