Pascal中的常用数学函数

  • 格式:doc
  • 大小:41.00 KB
  • 文档页数:8

Pascal中的常用数学函数
1、求绝对值函数abs(x)
定义:function Abs(X): (Same type as parameter);
说明:X可以是整型,也可以是实型;返回值和X的类型一致例子: var r: Real;
i: Integer;
begin
r := Abs(-2.3); { 2.3 }
i := Abs(-157); { 157 }
end.
2、取整函数int(x)
定义:function Int(X: Real): Real; 注意:X是实型数,返回值也是实型的;返回的是X的整数部分,也就是说,X被截尾了(而不是四舍五入)例子:
var R: Real;
begin
R := Int(123.567); { 123.0 }
R := Int(-123.456); { -123.0 }
end.
3、截尾函数trunc(x)
定义:function Trunc(X: Real): Longint; 注意:X是实型表达式. Trunc 返回Longint型的X的整数部分例子:
begin
Writeln(1.4, ' becomes ', Trunc(1.4)); { 1 }
Writeln(1.5, ' becomes ', Trunc(1.5)); { 1 }
Writeln(-1.4, 'becomes ', Trunc(-1.4)); { -1 }
Writeln(-1.5, 'becomes ', Trunc(-1.5)); { -1 }
end.
4、四舍五入函数round(x)
定义:function Round(X: Real): Longint; 注意:X是实型表达式. Round 返回Longint型的X的四舍五入值.如果返回值超出了Longint 的表示范围,则出错. 例子:
begin
Writeln(1.4, ' rounds to ', Round(1.4)); { 1 }
Writeln(1.5, ' rounds to ', Round(1.5)); { 2 }
Writeln(-1.4, 'rounds to ', Round(-1.4));{ -1 }
Writeln(-1.5, 'rounds to ', Round(-1.5));{ -2 }
end.
5、取小数函数frac(x)
定义:function Frac(X: Real): Real; 注意:X 是实型表达式. 结果返回 X 的小数部分; 也就是说,Frac(X) = X - Int(_X). 例子: var R: Real;
begin
R := Frac(123.456); { 0.456 }
R := Frac(-123.456); { -0.456 }
end.
6、求平方根函数sqrt(x)和平方函数sqr(x)
定义:
平方根:function Sqrt(X: Real): Real;
注意:X 是实型表达式. 返回实型的X的平方根. 平方:function Sqr(X): (Same type as parameter);
注意:X 是实型或整型表达式.返回值的类型和X的类型一致,大小是X 的平方,即X*X.
例子:
begin
Writeln('5 squared is ', Sqr(5)); { 25 }
Writeln('The square root of 2 is ',Sqrt(2.0)); { 1.414 }
字符串函数
求长度length
定义:function Length(S: String): Integer;
例子:
var
S: String;
begin
Readln (S);
Writeln('"', S, '"');
Writeln('length = ', Length(S));
end.
7、复制子串copy
定义: function Copy(S: String; Index: Integer; Count: Integer): String;
注意:S 是字符串类型的表达式。

Index和Count是整型表达式。

Copy 返回S中从Index开始,Count个字符长的一个子串。

例子:
var S: String;
begin
S := 'ABCDEF';
S := Copy(S, 2, 3); { 'BCD' }
end.
8、插入子串insert
定义:procedure Insert(Source: String; var S: String; Index: Integer);
注意:Source 是字符串类型的表达式。

S 是任意长度字符串类型变量。

Index 是整型表达式。

Insert 把 Source插在S中Index处。

如果结果字符串的长度大于255,那么255之后的字符将被删除。

例子:
var
S: String;
begin
S := 'Honest Lincoln';
Insert('Abe ', S, 8); { 'Honest Abe Lincoln' }
end.
9、删除子串delete
定义:procedure Delete(var S: String; Index: Integer;
Count:Integer);
注意:S 是字符串类型变量。

Index和Countare是整型表达式。

Delete 删除S中从Index开始的Count个字符。

如果Index大于S的长度,则不删除任何字符;如果Count大于S中从Index开始的实际字符数,则删除实际的字符数。

例子:
var
s: string;
begin
s := 'Honest Abe Lincoln';
Delete(s,8,4);
Writeln(s); { 'Honest Lincoln' }
Delete(s,9,10);
Writeln(s); { 'Honest L' }
end.
10、字符串转为数值val
定义: procedure Val(S; var V; var Code: Integer);
在这里:
S 是由一系列数字字符构成的字符串类型变量;。

V 是整型或实型变量;
Code 是Integer型变量
注意:Val将S转为它的数值形式。

例子:
var s:string;I, Code: Integer;
begin
s:='1234';
val(s,i,code);
writeln(i); { 1234 }
end.
11、数值转为字符串str
定义: procedure Str(X [: Width [: Decimals ]]; var S:string); 注意:将数值X转成字符串形式。

例子:
var
S: string[11];
begin
Str(I, S);
IntToStr := S;
begin
Writeln(IntToStr(-5322));
Readln;
end.
12、求子串起始位置pos
定义:function Pos(Substr: String; S: String): Byte;
注意:Substr和S字符串类型表达式。

Pos在S中搜索Substr并返回一个integer值。

这个值是Substr的第一个字符在S中的位置。

如果在S中没有找到Substr,则Pos返回0。

例子:
var S: String;
begin
S := ' 123.5';
{ Convert spaces to zeroes }
while Pos(' ', S) > 0 do
S[Pos(' ', S)] := '0';
end.
13、字符完全串连+
定义:操作符+把两个字符串联在一起。

例子:
var s1,s2,s:string;
s1:='Turbo ';
s2:='pascal';
s:=s1+s2; { 'Turbo pascal' }
end.
14、字符串压缩空格串连-
定义:操作符-去掉第一个字符串最后的空格后,将两个字符串联在一起。

例子:
var s1,s2,s:string;
begin
s1:='Turbo ';
s2:='pascal';
s:=s1-s2; { 'Turbopascal' }
end.。