Esta es una impresionante biblioteca de funciones matemáticas en Delphi, para cálculos en punto flotante, con números racionales y operaciones en alta precisión con enteros.
Según el autor el código no es el más eficiente, pero a cambio es comprensible, compacto, open source y puede ser compilado a partir de Delphi 7.
Para ejecutar los demos hay que cambiar la extensión del archivo demo *.pas a *.dpr y se iniciará en modo consola.
Ejemplo:
Si queremos calcular la operación z=1/3 habría que hacer lo siguiente:
uses
BTypes, mp_types, mp_base, mp_supp, mp_real,sysutils;
var
p,r,s,t,z:mp_float;
r1:real;
begin
//se inicializan las variables
mpf_initp3(s,t,z,mpf_get_default_prec);
mpf_set_ext(s,1);
mpf_set_ext(t,3);
mpf_div(s,t,z);
writeln('Rdo con MPArit ',mpf_decimal(z,80));
mpf_clear3(s,t,z); //Se liberan las variables
//El rdo es: 3.333333333333333333333333333333333333333333E-1
//comparación con el método habitual para calcular 1/3
r1:=1/3.0;
writeln('Rdo con Delphi: '+FloatToStrF(r1,ffexponent,8,20));
//el Rdo es: 3.3333333E-1
end;
Descargar biblioteca de funciones
Pagina oficial
LIBROS:
Matemáticas, el fascinante mundo de los números
Matrix computations (Matematical Science)
Geometría analítica del plano y del espacio
Mecánica de fluidos
Geometría Afín y Euclidea
No hay comentarios:
Publicar un comentario