Napisałem kiedys moduł matematyczny (jeszcze w pascalu). Potem przerobiłem go na delphi. Oto spis funkcji:
{ kombinatoryka }
FUNCTION silnia(n :word) :Extended;
FUNCTION nP(n, k :longint) :Double;
FUNCTION nC(n, k :longint) :Double;
{ funkcje pierwiastkowe }
FUNCTION cube(x :Double) :Double;
FUNCTION root(y,x :Double) :Double;
{ funkcje potegowe }
FUNCTION pow3(x :Double) :Double;
FUNCTION pow(x, y :Double) :Double;
{ funkcje wykladnicze }
FUNCTION eX(x :Double) :Double;
FUNCTION l0X(x :Double) :Double;
FUNCTION bA(b, a :Double) :Double;
{ funkcje logarytmiczne }
FUNCTION log(x :Double) :Double;
FUNCTION logbA(b, A :Double) :Double;
{ funkcje trygonometryczne }
FUNCTION sinX(ratio :Double) :Double;
FUNCTION cosX(ratio :Double) :Double;
FUNCTION tanX(ratio :Double) :Double;
FUNCTION ctgX(ratio :Double) :Double;
FUNCTION sec(ratio :Double) :Double;
FUNCTION csec(ratio :Double) :Double;
{ funkcje kolowe }
FUNCTION arsin(x :Double) :Double;
FUNCTION arcos(x :Double) :Double;
FUNCTION artan(x :Double) :Double;
FUNCTION arctg(x :Double) :Double;
{ funkcje hiperboliczne }
FUNCTION sinh(ratio :Double) :Double;
FUNCTION cosh(ratio :Double) :Double;
FUNCTION tanh(ratio :Double) :Double;
FUNCTION ctgh(ratio :Double) :Double;
FUNCTION sech(ratio :Double) :Double;
FUNCTION csech(ratio :Double) :Double;
{ funkcje hiperboliczne odwrotne }
FUNCTION arsinh(x :Double) :Double;
FUNCTION arcosh(x :Double) :Double;
FUNCTION artanh(x :Double) :Double;
FUNCTION arctgh(x :Double) :Double;
FUNCTION arsech(x :Double) :Double;
FUNCTION arcsech(x :Double) :Double;
{ konwersja wartosci katowych }
FUNCTION deg2rad(deg :Double) :Double;
FUNCTION deg2grad(deg :Double) :Double;
FUNCTION rad2deg(rad :Double) :Double;
FUNCTION rad2grad(rad :Double) :Double;
FUNCTION grad2deg(grad :Double) :Double;
FUNCTION grad2rad(grad :Double) :Double;
FUNCTION deg2min(deg :Double) :Double;
FUNCTION min2deg(min :Double) :Double;
{ konwersja wspolrzednych }
PROCEDURE pol(x, y :Double; VAR r, O :Double);
PROCEDURE rec(r,O :Double; VAR x,y :Double);
{ funkcje statystyczne }
FUNCTION Gauss(Avg, Std, X :Double) :Double;
FUNCTION Mean(DB :ARRAY OF Double) :Double;
FUNCTION StdDev(DB :ARRAY OF Double) :Double;
FUNCTION Variance(DB :ARRAY OF Double) :Double;
FUNCTION MaxVal(DB :ARRAY OF Double) :Double;
FUNCTION MinVal(DB :ARRAY OF Double) :Double;
FUNCTION RandG(a, d :Double) :Double;
FUNCTION Pearson(X,Y :ARRAY OF Double) :Double;
PROCEDURE RegLin(DBx, DBy :ARRAY OF Double; VAR A, B :Double);
FUNCTION Interpolacja(X1,Y1, X2,Y2, X :Double) :Double;
{ konwersje systemow liczbowych }
FUNCTION Bin2DEC(Bin:STRING):LongInt;
FUNCTION Bin2Hex(Bin:STRING):STRING;
FUNCTION DEC2Bin(DEC:LongInt):STRING;
FUNCTION DEC2Hex(DEC:LongInt):STRING;
FUNCTION Hex2Bin(Hex:STRING):STRING;
FUNCTION Hex2DEC(Hex:STRING):LongInt;
FUNCTION Oct2DEC(Oct:STRING):LongInt;
FUNCTION DEC2Oct(DEC:LongInt):STRING;
{ funkcje kalendarza }
FUNCTION przest(r: integer): Boolean;
FUNCTION dmax(m, r: integer): integer;
FUNCTION ndr(d, m, r: integer): integer;
FUNCTION dtyg(d, m, r: integer): integer;
Jak chcesz to podeślę na maila.
(Działa na delphi 2 lub wyżej)