cc [ flags ] -I/usr/local/include file(s) -L/usr/local/lib -lmcw [ ... ] #include <mathcw.h> extern float eulnumf (int n); extern double eulnum (int n); extern long double eulnuml (int n); extern __float80 eulnumw (int n); extern __float128 eulnumq (int n); extern long_long_double eulnumll (int n); extern decimal_float eulnumdf (int n); extern decimal_double eulnumd (int n); extern decimal_long_double eulnumdl (int n); extern decimal_long_long_double eulnumdll (int n);
NB: Functions with prototypes containing underscores in type names may be available only with certain extended compilers.
All Euler numbers of odd index are zero.
Those of even index are whole numbers that alternate in sign and grow rapidly to the floating-point overflow limit. Because of leading digit loss from subtractions in their recurrence relation, their calculation requires high-precision arithmetic, which is why they are precomputed that way and then rounded and stored to machine precision in a compile-time internal table.
In IEEE 754 32-bit binary arithmetic, the result is plus/minus Infinity for n > 39. The overflow limits in IEEE 754 binary 64-bit, 80-bit, and 128-bit arithmetic are reached for n values above 187, 1866, and 1866, respectively. The corresponding values in IEEE 754 32-bit, 64-bit, and 128-bit decimal arithmetic are 77, 223, and 2255, respectively.