408
Appendix A: System Routines — Direct Floating Point Operations
TI
-
89 / TI
-
92 Plus Developer Guide
Not for Distribution
Beta Version January 26, 2001
frexp10
Declaration:
double
frexp10
(double
x
, int *
exp_ptr
)
Category(ies):
Direct Floating Point Operations
Description:
For
x
= f
†
10^n with 0.1 <= |f| < 1.0, returns f after storing n into *
exp_ptr
.
Otherwise if
x
is any kind of floating-point zero, returns
x
and stores 0 into
*
exp_ptr
.
Inputs:
x
— Double.
exp_ptr
— Pointer to an integer.
Outputs:
None
Assumptions:
None
Side Effects:
None
Availability:
On AMS 1.05 and higher.
TI
-
89 / TI
-
92 Plus
Differences:
None
See Also:
Analogous to frexp (double
x
, int *
exp_ptr
) in the ANSI C math library,
except using base ten rather than base two.
Example:
double quick_log_10_abs (double x)
/* Returns a quickly-computed rough approximation to the base-ten
logarithm of abs(x) for nonzero x.
*/
{ int exponent;
x = frexp10 (fabs(x), &exponent);
return (exponent – 1) + x;
}