Función de operación matemática de Delphi
Autor:lyboy99
correo electrónico:[email protected]
URL: http://hnh.126.com
Aquí hay algunas funciones comunes para usted, espero que puedan serle útiles.
Puede diseñar fácilmente una potente máquina de cálculo científico utilizando las siguientes funciones.
función rnd(arg1:doble):doble;
Comenzar
resultado := Aleatorio * int(arg1);
fin;
función arcsinh(arg1:doble):doble;
comenzar
resultado:=Ln(arg1+sqrt(1+potencia(arg1,2)));
fin;
función arccosh(arg1:doble):doble;
comenzar
resultado :=Ln(arg1+sqrt(potencia(arg1,2)-1));
fin;
función arctanh(arg1:doble):doble;
comenzar
resultado :=Ln((1+arg1)/(1-arg1))/2;
fin;
función arcsech(arg1:doble):doble;
comenzar
resultado :=Ln((1/arg1)+sqrt(potencia((1/arg1),2)-1));
fin;
función arccosech(arg1:doble):doble;
comenzar
resultado :=Ln((1/arg1)+sqrt(1+potencia((1/arg1),2)));
fin;
función arccoth(arg1:doble):doble;
comenzar
resultado :=Ln((1+(1/arg1))/(1-(1/arg1)))/2;
fin;
función degarcsin(arg1:doble):doble;
comenzar
resultado :=arcsin(DegToRad(arg1));
fin;
función arcsec(arg1:doble):doble;
comenzar
resultado := arccos(1/arg1);
fin;
función degarcsec(arg1:doble):doble;
comenzar
resultado := RadToDeg(arccos(1/arg1));
fin;
función arccosec(arg1:doble):doble;
comenzar
resultado := arcsin(1/arg1);
fin;
función degarccosec(arg1:doble):doble;
comenzar
resultado := RadToDeg(arcsin(1/arg1));
fin;
funcion degarccos(arg1:doble):doble;
comenzar
resultado :=arccos(DegToRad(arg1));
fin;
función arccot(arg1:doble):doble;
comenzar
resultado := arctan(1/arg1);
fin;
función degarccot(arg1:doble):doble;
comenzar
resultado := RadToDeg(arctan(1/arg1));
fin;
función cosech(arg1:doble):doble;
comenzar
resultado := 2/(exp(arg1)-exp(-arg1));
fin;
función sech(arg1:doble):doble;
comenzar
resultado := 2/(exp(arg1)+exp(-arg1));
fin;
función tanh(arg1:doble):doble;
comenzar
resultado := (exp(arg1)-exp(arg1))/(exp(arg1)+exp(-arg1));
fin;
función coth(arg1:doble):doble;
comenzar
resultado := (exp(arg1)+exp(arg1))/(exp(arg1)-exp(-arg1));
fin;
función degarctan(arg1:doble):doble;
comenzar
resultado:= RadToDeg(arctan(arg1));
fin;
función arg(arg1,arg2:doble):doble;
comenzar
si arg1 < 0 entonces
resultado := arctan(arg2/arg1)+Pi
demás
si arg1>0 entonces
resultado := arctan(arg2/arg1)
demás
si arg2 > 0 entonces
resultado := 0,5 * Pi
demás
resultado := -0,5 * Pi;
fin;
función sinh(arg1:doble):doble;
comenzar
resultado := (exp(arg1)-exp(-arg1))*0.5;
fin;
función cosh(arg1:doble):doble;
comenzar
resultado := (exp(arg1)+exp(-arg1))*0.5;
fin;
función cuna(arg1:doble):doble;
comenzar
si Abs(arg1)>0.000000001 entonces resultado:= cotan(arg1) else resultado:=100000;
fin;
función cotrad(arg1:doble):doble;
comenzar
resultado := cotan(DegToRad(arg1));
fin;
función seg(arg1:doble):doble;
comenzar
resultado := 1/cos(arg1);
fin;
función cosec(arg1:doble):doble;
comenzar
si Abs(arg1)>0.000000001 entonces resultado:= 1/sin(arg1) else resultado:=1000000;
fin;
función tanrad(arg1:doble):doble;
comenzar
resultado := tan(DegToRad(arg1));
fin;
función sinrad(arg1:doble):doble;
comenzar
resultado := pecado(DegToRad(arg1));
fin;
función cosrad(arg1:doble):doble;
comenzar
resultado := cos(DegToRad(arg1));
fin;
función cosecrad(arg1:doble):doble;
comenzar
resultado := 1/sin(DegToRad(arg1));
fin;
funcion secrad(arg1:doble):doble;
comenzar
resultado:= 1/cos(DegToRad(arg1));
fin;
función blanco(arg1:doble):doble;
var
temp,res:extendido;
recuento: entero;
comenzar
Comenzar
res:=0;
para contar: = 0 a 49 hacer
comenzar
arg1:=arg1-int(arg1-(Ord(arg1<0)));
si (arg1)<0.5 entonces temp:=(arg1) else temp:=(1-arg1);
res:=res+ temp/(potencia(2,cuenta));
arg1:=2*arg1;
fin;
fin;
resultado:=res;
fin;
función min(arg1,arg2:doble):doble;
comenzar
si arg1 <arg2 entonces
resultado: = arg1
demás
resultado := arg2;
fin;
función max(arg1,arg2:doble):doble;
comenzar
si arg1 <arg2 entonces
resultado: = arg2
demás
resultado := arg1;
fin;
función heaviside(arg1:doble):doble;
comenzar
si arg1 < 0 entonces
resultado := 0
demás
resultado:= 1;
fin;
signo de función (arg1: doble): doble;
comenzar
si arg1 < 0 entonces
resultado: = -1
demás
si arg1 > 0 entonces
resultado := 1.0
demás
resultado: = 0,0;
fin;
función cero(arg1:doble):doble;
comenzar
si arg1 = 0.0 entonces
resultado := 0.0
demás
resultado:= 1,0;
fin;
función techo(arg1:doble):doble;
comenzar
si frac(arg1) > 0 entonces
resultado:= int(arg1 + 1)
demás
resultado:= int(arg1);
fin;
función piso(arg1:doble):doble;
comenzar
si frac(arg1) < 0 entonces
resultado:= int(arg1 - 1)
demás
resultado:= int(arg1);
fin;
radio de función (arg1, arg2: doble): doble;
comenzar
resultado:= sqrt(sqr(arg1)+sqr(arg2));
fin;