[zz]Math库实用汇总
2008-02-02 23:38
239 查看
Math库实用汇总
在FP中,Math库为我们提供了丰富的数学函数。以下介绍在OI中可能会用到的Math库中一些函数、过程。
使用方法:在程序头用Uses语句加载Math库
例子:
Program Ex_Math;
Uses Math;
Begin
Writeln(hypot(3,4));
End.
函数介绍:
l hypot
原型:function hypot(x:float;y:float):float
功能:返回直角三角形中较长边的长度,也就是sqrt(sqr(x)+sqr(y))
l ceil
原型:function ceil(x:float):Integer
功能:返回比参数大的最小整数
引发错误:在x超出Integer的范围时会引发溢出错误
l floor
原型:function floor(x:float):Integer
功能:返回参数小的最大整数
引发错误:在x超出Integer的范围时会引发溢出错误
l power
原型:function power(base:float;exponent:float):float
功能:返回base的exponent次方
引发错误:在base为负数且exponent为小数时
l intpower
原型:function intpower(base:float;const exponent:Integer):float
功能:返回base的exponent次方
l ldexp
原型:function ldexp(x:float;const p:Integer):float
功能:返回2的p次方乘以x
l log10
原型:function log10(x:float):float
功能:返回x的常用对数
l log2
原型:function log2(x:float):float
功能:返回x以2为底的对数
l logn
原型:function logn(n:float;x:float):float
功能:返回x以n为底的对数
l Max
原型:function Max(a:Integer;b:Integer):Integer
function Max(a:Int64;b:Int64):Int64
function Max(a:Extended;b:Extended):Extended
功能:返回a与b中较大的一个
l Min
原型:function Min(a:Integer;b:Integer):Integer
function Min(a:Int64;b:Int64):Int64
function Min(a:Extended;b:Extended):Extended
功能:返回a与b中较小的一个
l arcsin
原型:function arcsin(x:float):float
功能:返回x的反正弦值,返回的是弧度指单位
l arccon
原型:function arccon(x:float):float
功能:返回x的反余弦值,返回的是弧度指单位
l tan
原型:function tan(x:float):float
功能:返回x的正切值,x以弧度为单位
l cotan
原型:function cotan(x:float):float
功能:返回x的余切值,x以弧度为单位
l arcsinh
原型:function arcsinh(x:float):float
功能:返回双曲线的反正弦
l arccosh
原型:function arccosh(x:float):float
功能:返回双曲线的反余弦
l arctanh
原型:function arctanh(x:float):float
功能:返回双曲线的反正切
l sinh
原型:function sinh(x:float):float
功能:返回双曲线的正弦
l cosh
原型:function sinh(x:float):float
功能:返回双曲线的正弦
l tanh
原型:function sinh(x:float):float
功能:返回双曲线的正切
l cycletorad
原型:function cycletorad(cycle:float):float
功能:返回圆的份数转换成弧度之后的值
l degtorad
原型:function degtorad(deg:float):float
功能:返回角度转换成弧度之后的值
l radtocycle
原型:function radtocycle(rad:float):float
功能:返回弧度转换成圆的份数之后的值
l radtodeg
原型:function radtodeg(rad:float):float
功能:返回弧度转换成角度之后的值
l MaxValue
原型:function maxvalue(const data:Array[] of float):float
function maxvalue(const data:Array[] of Integer):Integer
function maxvalue(const data:PFloat;const N:Integer):float
function maxvalue(const data:PInteger;const N:Integer):Integer
功能:返回数组中的最大值
l MinValue
原型:function minvalue(const data:Array[] of float):float
function minvalue(const data:Array[] of Integer):Integer
function minvalue(const data:PFloat;const N:Integer):float
function MinValue(const Data:PInteger;const N:Integer):Integer
功能:返回数组中的最小值
l sum
原型:function sum(const data:Array[] of float):float
function sum(const data:PFloat;const N:LongInt):float
功能:求数组中所有数之和
l sumsandsquares
原型:procedure sumsandsquares(const data:Array[] of float;var sum:float;
var sumofsquares:float)
procedure sumsandsquares(const data:PFloat;const N:Integer;
var sum:float;var sumofsquares:float)
功能:将数组中的数求和方如num中,求平方和放入sumofsquares中
例子:(注:以下全都在已经uses math的前提下进行的。)
begin
Writeln(hypot(6,8)); //输出10。10^2=6^2+8^2
end.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=―
begin
writeln(ceil(3.4));//4
writeln(ceil(3.7));//4
writeln(ceil(-3.4));//-3
writeln(ceil(-3.7));//-3
writeln(floor(3.4));//3
writeln(floor(3.7));//3
writeln(floor(-3.4));//-4
writeln(floor(-3.7));//-4
end.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=―
begin
writeln(power(1.1,1.1):2:3);
writeln(power(-1.1,3):2:3);
writeln(power(1.1,-1.1):2:3);
writeln(intpower(1.1,2):2:3);
writeln(intpower(4.1,-2):2:3);
writeln(intpower(-1.1,2):2:3);
writeln(ldexp(2,4):8:4); // 32.0000
writeln(ldexp(0.5,3):8:4);// 4.0000
writeln(ldexp(-3,3):8:4); // -24.000
Writeln(Log10(10):8:4);
Writeln(Log10(1):8:4);
Writeln(Log10(0.1):8:4);
Writeln(Log2(4):8:4);
Writeln(Log2(0.5):8:4);
Writeln(Logn(3,4):8:4);
Writeln(Logn(exp(1),exp(1)):8:4);
writeln(max(1,2));
writeln(min(1,2));
end.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=―
begin
writeln(arccos(0.5)/pi);
writeln(arcsin(0.5)/pi);
writeln(arctan(0.5)/pi); //这个不在math库里,在system库里就有
writeln(cos(pi/6)); //这个不在math库里,在system库里就有
writeln(sin(pi/6)); //这个不在math库里,在system库里就有
writeln(tan(pi/6));
writeln(cotan(pi/6));
end.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=―
begin
//返回的是双曲线的 | 定义域
writeln(arcosh(2));//反余弦 | [R]
writeln(arsinh(2));//反正弦 | [R]
writeln(artanh(0.1));//反正切 | [-1,1]
writeln(cosh(2));//余弦 | [R]
writeln(sinh(2));//正弦 | [R]
writeln(tanh(2));//正切 | [R]
end.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=―
begin
//角度、弧度、圆的相互转换,圆是指这么大的角占多少个圆
writeln(cycletorad(1/6)/pi);//圆到弧度
writeln(degtorad(90)/pi);//角度到弧度
writeln(radtocycle(pi/2));//弧度到圆
writeln(radtodeg(pi/3));//弧度到角度
end.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=―
Var
I:Integer;
a:array[1..10] of float;//一定要是longint或float,就是32为变量
begin
Randomize ;
for I:=low(a) to high (a) do begin
a[i]:=random(10);
write(a[i]:2:2,' ');
end;
writeln;
writeln(MaxValue(a):2:2);//数组中的最大值
writeln(MinValue(a):2:2);//数组中的最小值
writeln(sum(a):2:2);//数组中所有元素的和,只有float能用
sumsandsquares(a,s,ss);//s为和,ss为平方和,只有float能用
writeln(s:2:2,' ',ss:2:2);
end.
在FP中,Math库为我们提供了丰富的数学函数。以下介绍在OI中可能会用到的Math库中一些函数、过程。
使用方法:在程序头用Uses语句加载Math库
例子:
Program Ex_Math;
Uses Math;
Begin
Writeln(hypot(3,4));
End.
函数介绍:
l hypot
原型:function hypot(x:float;y:float):float
功能:返回直角三角形中较长边的长度,也就是sqrt(sqr(x)+sqr(y))
l ceil
原型:function ceil(x:float):Integer
功能:返回比参数大的最小整数
引发错误:在x超出Integer的范围时会引发溢出错误
l floor
原型:function floor(x:float):Integer
功能:返回参数小的最大整数
引发错误:在x超出Integer的范围时会引发溢出错误
l power
原型:function power(base:float;exponent:float):float
功能:返回base的exponent次方
引发错误:在base为负数且exponent为小数时
l intpower
原型:function intpower(base:float;const exponent:Integer):float
功能:返回base的exponent次方
l ldexp
原型:function ldexp(x:float;const p:Integer):float
功能:返回2的p次方乘以x
l log10
原型:function log10(x:float):float
功能:返回x的常用对数
l log2
原型:function log2(x:float):float
功能:返回x以2为底的对数
l logn
原型:function logn(n:float;x:float):float
功能:返回x以n为底的对数
l Max
原型:function Max(a:Integer;b:Integer):Integer
function Max(a:Int64;b:Int64):Int64
function Max(a:Extended;b:Extended):Extended
功能:返回a与b中较大的一个
l Min
原型:function Min(a:Integer;b:Integer):Integer
function Min(a:Int64;b:Int64):Int64
function Min(a:Extended;b:Extended):Extended
功能:返回a与b中较小的一个
l arcsin
原型:function arcsin(x:float):float
功能:返回x的反正弦值,返回的是弧度指单位
l arccon
原型:function arccon(x:float):float
功能:返回x的反余弦值,返回的是弧度指单位
l tan
原型:function tan(x:float):float
功能:返回x的正切值,x以弧度为单位
l cotan
原型:function cotan(x:float):float
功能:返回x的余切值,x以弧度为单位
l arcsinh
原型:function arcsinh(x:float):float
功能:返回双曲线的反正弦
l arccosh
原型:function arccosh(x:float):float
功能:返回双曲线的反余弦
l arctanh
原型:function arctanh(x:float):float
功能:返回双曲线的反正切
l sinh
原型:function sinh(x:float):float
功能:返回双曲线的正弦
l cosh
原型:function sinh(x:float):float
功能:返回双曲线的正弦
l tanh
原型:function sinh(x:float):float
功能:返回双曲线的正切
l cycletorad
原型:function cycletorad(cycle:float):float
功能:返回圆的份数转换成弧度之后的值
l degtorad
原型:function degtorad(deg:float):float
功能:返回角度转换成弧度之后的值
l radtocycle
原型:function radtocycle(rad:float):float
功能:返回弧度转换成圆的份数之后的值
l radtodeg
原型:function radtodeg(rad:float):float
功能:返回弧度转换成角度之后的值
l MaxValue
原型:function maxvalue(const data:Array[] of float):float
function maxvalue(const data:Array[] of Integer):Integer
function maxvalue(const data:PFloat;const N:Integer):float
function maxvalue(const data:PInteger;const N:Integer):Integer
功能:返回数组中的最大值
l MinValue
原型:function minvalue(const data:Array[] of float):float
function minvalue(const data:Array[] of Integer):Integer
function minvalue(const data:PFloat;const N:Integer):float
function MinValue(const Data:PInteger;const N:Integer):Integer
功能:返回数组中的最小值
l sum
原型:function sum(const data:Array[] of float):float
function sum(const data:PFloat;const N:LongInt):float
功能:求数组中所有数之和
l sumsandsquares
原型:procedure sumsandsquares(const data:Array[] of float;var sum:float;
var sumofsquares:float)
procedure sumsandsquares(const data:PFloat;const N:Integer;
var sum:float;var sumofsquares:float)
功能:将数组中的数求和方如num中,求平方和放入sumofsquares中
例子:(注:以下全都在已经uses math的前提下进行的。)
begin
Writeln(hypot(6,8)); //输出10。10^2=6^2+8^2
end.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=―
begin
writeln(ceil(3.4));//4
writeln(ceil(3.7));//4
writeln(ceil(-3.4));//-3
writeln(ceil(-3.7));//-3
writeln(floor(3.4));//3
writeln(floor(3.7));//3
writeln(floor(-3.4));//-4
writeln(floor(-3.7));//-4
end.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=―
begin
writeln(power(1.1,1.1):2:3);
writeln(power(-1.1,3):2:3);
writeln(power(1.1,-1.1):2:3);
writeln(intpower(1.1,2):2:3);
writeln(intpower(4.1,-2):2:3);
writeln(intpower(-1.1,2):2:3);
writeln(ldexp(2,4):8:4); // 32.0000
writeln(ldexp(0.5,3):8:4);// 4.0000
writeln(ldexp(-3,3):8:4); // -24.000
Writeln(Log10(10):8:4);
Writeln(Log10(1):8:4);
Writeln(Log10(0.1):8:4);
Writeln(Log2(4):8:4);
Writeln(Log2(0.5):8:4);
Writeln(Logn(3,4):8:4);
Writeln(Logn(exp(1),exp(1)):8:4);
writeln(max(1,2));
writeln(min(1,2));
end.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=―
begin
writeln(arccos(0.5)/pi);
writeln(arcsin(0.5)/pi);
writeln(arctan(0.5)/pi); //这个不在math库里,在system库里就有
writeln(cos(pi/6)); //这个不在math库里,在system库里就有
writeln(sin(pi/6)); //这个不在math库里,在system库里就有
writeln(tan(pi/6));
writeln(cotan(pi/6));
end.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=―
begin
//返回的是双曲线的 | 定义域
writeln(arcosh(2));//反余弦 | [R]
writeln(arsinh(2));//反正弦 | [R]
writeln(artanh(0.1));//反正切 | [-1,1]
writeln(cosh(2));//余弦 | [R]
writeln(sinh(2));//正弦 | [R]
writeln(tanh(2));//正切 | [R]
end.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=―
begin
//角度、弧度、圆的相互转换,圆是指这么大的角占多少个圆
writeln(cycletorad(1/6)/pi);//圆到弧度
writeln(degtorad(90)/pi);//角度到弧度
writeln(radtocycle(pi/2));//弧度到圆
writeln(radtodeg(pi/3));//弧度到角度
end.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=―
Var
I:Integer;
a:array[1..10] of float;//一定要是longint或float,就是32为变量
begin
Randomize ;
for I:=low(a) to high (a) do begin
a[i]:=random(10);
write(a[i]:2:2,' ');
end;
writeln;
writeln(MaxValue(a):2:2);//数组中的最大值
writeln(MinValue(a):2:2);//数组中的最小值
writeln(sum(a):2:2);//数组中所有元素的和,只有float能用
sumsandsquares(a,s,ss);//s为和,ss为平方和,只有float能用
writeln(s:2:2,' ',ss:2:2);
end.
相关文章推荐
- [ZZ]Unity3D实用工具汇总
- [ZZ]Unity3D实用工具汇总
- [ZZ]Unity3D实用工具汇总
- 实用windows命令汇总
- 最实用的 Linux 命令行使用技巧汇总
- iOS 实用功能汇总(2)
- Android中三种超实用的滑屏方式汇总(转载)
- SCSS 实用知识汇总
- 实用网址汇总
- 【汇总,不定期更新】c++实用的STL
- Java实用类汇总
- C#之WinForm WebBrowser实用技巧汇总
- 【实用随机】各种安装配置汇总
- 实用js小汇总--获取iframe引用的页面中的控件ID,或赋值的实现方法
- 实用JS小汇总--多个框架中的关联操作
- 【汇总】Excel暗藏赛车游戏,微软秘密有多少?【实用】
- 实用资料链接汇总
- VC++ 6.0实用技巧汇总
- (转)VC++ 6.0实用技巧汇总
- Android Studio实用快捷键汇总