dmath.h (1264B)
1 /* dmath.h - funciones de la calculadora sobre Dec (18 digitos internos). 2 * Errores (dominio, rango) devuelven un Dec con err = DE_MATH. */ 3 #ifndef DMATH_H 4 #define DMATH_H 5 #include "dec.h" 6 7 enum { ANG_DEG, ANG_RAD, ANG_GRA }; 8 9 /* constantes con 18 digitos */ 10 Dec d_pi(void); 11 Dec d_e(void); 12 13 Dec d_exp(Dec x); 14 Dec d_ln(Dec x); 15 Dec d_log10(Dec x); 16 Dec d_pow10(Dec x); /* 10^x */ 17 Dec d_log1p(Dec x); /* ln(1+x) preciso cerca de 0 */ 18 Dec d_pow(Dec x, Dec y); /* x^y (x < 0 solo con y entero) */ 19 Dec d_root(Dec x, int64_t n); /* raiz n-esima (x < 0 con n impar) */ 20 21 /* trigonometricas con la unidad de angulo de la calculadora */ 22 Dec d_sin(Dec x, int ang); 23 Dec d_cos(Dec x, int ang); 24 Dec d_tan(Dec x, int ang); 25 Dec d_asin(Dec x, int ang); 26 Dec d_acos(Dec x, int ang); 27 Dec d_atan(Dec x, int ang); 28 Dec d_atan2(Dec y, Dec x, int ang); /* angulo de (x, y) en (-180, 180] */ 29 Dec d_to_rad(Dec x, int ang); 30 Dec d_from_rad(Dec x, int ang); 31 Dec d_ang_conv(Dec x, int from, int to); 32 33 Dec d_sinh(Dec x); 34 Dec d_cosh(Dec x); 35 Dec d_tanh(Dec x); 36 Dec d_asinh(Dec x); 37 Dec d_acosh(Dec x); 38 Dec d_atanh(Dec x); 39 40 Dec d_fact(Dec x); /* x! para enteros 0..69 */ 41 Dec d_npr(Dec n, Dec r); 42 Dec d_ncr(Dec n, Dec r); 43 44 #endif