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