天天看点

math.h里的数学计算公式介绍

       1、 三角函数

  double sin (double);正弦

  double cos (double);余弦

  double tan (double);正切

  2 、反三角函数

  double asin (double); 结果介于[-PI/2, PI/2]

  double acos (double); 结果介于[0, PI]

  double atan (double); 反正切(主值), 结果介于[-PI/2, PI/2]

  double atan2 (double, double); 反正切(整圆值), 结果介于[-PI, PI]

  3 、双曲三角函数

  double sinh (double);

  double cosh (double);

  double tanh (double);

  4 、指数与对数

  double exp (double);求取自然数e的幂

  double sqrt (double);开平方

  double log (double); 以e为底的对数

  double log10 (double);以10为底的对数

  double pow(double x, double y);计算以x为底数的y次幂

  float powf(float x, float y); 功能与pow一致,只是输入与输出皆为浮点数

  5 、取整

  double ceil (double); 取上整

  double floor (double); 取下整

  6 、绝对值

  double fabs (double);求绝对值

  double cabs(struct complex znum) ;求复数的绝对值

  7 、标准化浮点数

  double frexp (double f, int *p); 标准化浮点数, f = x * 2^p, 已知f求x, p ( x介于[0.5, 1] )

  double ldexp (double x, int p); 与frexp相反, 已知x, p求f

  8 、取整与取余

  double modf (double, double*); 将参数的整数部分通过指针回传, 返回小数部分

  double fmod (double, double); 返回两参数相除的余数

  9 、其他

  double hypot(double x, double y);已知直角三角形两个直角边长度,求斜边长度

  double ldexp(double x, int exponent);计算x*(2的exponent次幂)

  double poly(double x, int degree, double coeffs [] );计算多项式

  nt matherr(struct exception *e);数学错误计算处理程序

Math库实用汇总

在FP中,Math库为我们提供了丰富的数学函数。以下介绍在OI中可能会用到的Math库中一些函数、过程。

使用方法:在程序头用Uses语句加载Math库

例子:

Program Ex_Math;

Uses Math;

Begin

Writeln(hypot(3,4));

End.

函数介绍:

? hypot

原型:function hypot(x:float;y:float):float

功能:返回直角三角形中较长边的长度,也就是sqrt(sqr(x)+sqr(y))

? ceil

原型:function ceil(x:float):Integer

功能:返回比参数大的最小整数

引发错误:在x超出Integer的范围时会引发溢出错误

? floor

原型:function floor(x:float):Integer

功能:返回参数小的最大整数

引发错误:在x超出Integer的范围时会引发溢出错误

? power

原型:function power(base:float;exponent:float):float

功能:返回base的exponent次方

引发错误:在base为负数且exponent为小数时

? intpower

原型:function intpower(base:float;const exponent:Integer):float

功能:返回base的exponent次方

? ldexp

原型:function ldexp(x:float;const p:Integer):float

功能:返回2的p次方乘以x

? log10

原型:function log10(x:float):float

功能:返回x的常用对数

? log2

原型:function log2(x:float):float

功能:返回x以2为底的对数

? logn

原型:function logn(n:float;x:float):float

功能:返回x以n为底的对数

? Max

原型:function Max(a:Integer;b:Integer):Integer

function Max(a:Int64;b:Int64):Int64

function Max(a:Extended;b:Extended):Extended

功能:返回a与b中较大的一个

? Min

原型:function Min(a:Integer;b:Integer):Integer

function Min(a:Int64;b:Int64):Int64

function Min(a:Extended;b:Extended):Extended

功能:返回a与b中较小的一个

? arcsin

原型:function arcsin(x:float):float

功能:返回x的反正弦值,返回的是弧度指单位

? arccos

原型:function arccos(x:float):float

功能:返回x的反余弦值,返回的是弧度指单位

? tan

原型:function tan(x:float):float

功能:返回x的正切值,x以弧度为单位

? cotan

原型:function cotan(x:float):float

功能:返回x的余切值,x以弧度为单位

? arcsinh

原型:function arcsinh(x:float):float

功能:返回双曲线的反正弦

? arccosh

原型:function arccosh(x:float):float

功能:返回双曲线的反余弦

? arctanh

原型:function arctanh(x:float):float

功能:返回双曲线的反正切

? sinh

原型:function sinh(x:float):float

功能:返回双曲线的正弦

? cosh

原型:function sinh(x:float):float

功能:返回双曲线的正弦

? tanh

原型:function sinh(x:float):float

功能:返回双曲线的正切

? cycletorad

原型:function cycletorad(cycle:float):float

功能:返回圆的份数转换成弧度之后的值

? degtorad

原型:function degtorad(deg:float):float

功能:返回角度转换成弧度之后的值

? radtocycle

原型:function radtocycle(rad:float):float

功能:返回弧度转换成圆的份数之后的值

? radtodeg

原型:function radtodeg(rad:float):float

功能:返回弧度转换成角度之后的值

? 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

功能:返回数组中的最大值

? 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

功能:返回数组中的最小值

? sum

原型:function sum(const data:Array[] of float):float

function sum(const data:PFloat;const N:LongInt):float

功能:求数组中所有数之和

? 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中

? **

原型:function operator **(float,float):float(bas:float;expo:float):float

function operator **(Int64,Int64):Int64(bas:Int64;expo:Int64):Int64

功能:同等于Power,这是乘方的操作符

Math库实用汇总

在FP中,Math库为我们提供了丰富的数学函数。以下介绍在OI中可能会用到的Math库中一些函数、过程。

使用方法:在程序头用Uses语句加载Math库

例子:

Program Ex_Math;

Uses Math;

Begin

Writeln(hypot(3,4));

End.

函数介绍:

? hypot

原型:function hypot(x:float;y:float):float

功能:返回直角三角形中较长边的长度,也就是sqrt(sqr(x)+sqr(y))

? ceil

原型:function ceil(x:float):Integer

功能:返回比参数大的最小整数

引发错误:在x超出Integer的范围时会引发溢出错误

? floor

原型:function floor(x:float):Integer

功能:返回参数小的最大整数

引发错误:在x超出Integer的范围时会引发溢出错误

? power

原型:function power(base:float;exponent:float):float

功能:返回base的exponent次方

引发错误:在base为负数且exponent为小数时

? intpower

原型:function intpower(base:float;const exponent:Integer):float

功能:返回base的exponent次方

? ldexp

原型:function ldexp(x:float;const p:Integer):float

功能:返回2的p次方乘以x

? log10

原型:function log10(x:float):float

功能:返回x的常用对数

? log2

原型:function log2(x:float):float

功能:返回x以2为底的对数

? logn

原型:function logn(n:float;x:float):float

功能:返回x以n为底的对数

? Max

原型:function Max(a:Integer;b:Integer):Integer

function Max(a:Int64;b:Int64):Int64

function Max(a:Extended;b:Extended):Extended

功能:返回a与b中较大的一个

? Min

原型:function Min(a:Integer;b:Integer):Integer

function Min(a:Int64;b:Int64):Int64

function Min(a:Extended;b:Extended):Extended

功能:返回a与b中较小的一个

? arcsin

原型:function arcsin(x:float):float

功能:返回x的反正弦值,返回的是弧度指单位

? arccos

原型:function arccos(x:float):float

功能:返回x的反余弦值,返回的是弧度指单位

? tan

原型:function tan(x:float):float

功能:返回x的正切值,x以弧度为单位

? cotan

原型:function cotan(x:float):float

功能:返回x的余切值,x以弧度为单位

? arcsinh

原型:function arcsinh(x:float):float

功能:返回双曲线的反正弦

? arccosh

原型:function arccosh(x:float):float

功能:返回双曲线的反余弦

? arctanh

原型:function arctanh(x:float):float

功能:返回双曲线的反正切

? sinh

原型:function sinh(x:float):float

功能:返回双曲线的正弦

? cosh

原型:function sinh(x:float):float

功能:返回双曲线的正弦

? tanh

原型:function sinh(x:float):float

功能:返回双曲线的正切

? cycletorad

原型:function cycletorad(cycle:float):float

功能:返回圆的份数转换成弧度之后的值

? degtorad

原型:function degtorad(deg:float):float

功能:返回角度转换成弧度之后的值

? radtocycle

原型:function radtocycle(rad:float):float

功能:返回弧度转换成圆的份数之后的值

? radtodeg

原型:function radtodeg(rad:float):float

功能:返回弧度转换成角度之后的值

? 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

功能:返回数组中的最大值

? 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

功能:返回数组中的最小值

? sum

原型:function sum(const data:Array[] of float):float

function sum(const data:PFloat;const N:LongInt):float

功能:求数组中所有数之和

? 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中

? **

原型:function operator **(float,float):float(bas:float;expo:float):float

function operator **(Int64,Int64):Int64(bas:Int64;expo:Int64):Int64

功能:同等于Power,这是乘方的操作符

http://www.ityran.com/thread-1211-1-1.html