NAME
    places - return number of "decimal" places in a fractional part

SYNOPSIS
    places(x [,b])

TYPES
    x           real
    b           integer >= 2, defaults to 10

    return      integer

DESCRIPTION
    Returns the least non-negative integer n for which  b^n * x  is an
    integer, or -1 if there is no such integer.

    places(x,b) = 0 if and only if x is an integer.

    If omitted, b is assumed to be 10.  If given, b must be an
    integer > 1.

    places(x,b) = n > 0 if and only if the fractional part of abs(x)
    has a finite base-b "decimal" representation with n digits of which
    the last digit is nonzero.  This occurs if and only if every prime
    factor of den(x) is a factor of b.

EXAMPLE
    ; print places(3), places(0.0123), places(3.70), places(1e-10), places(3/7)
    0 4 1 10 -1

    ; print places(0.0123, 2), places(.625, 2), places(.625, 8)
    -1 3 1

LIMITS
    b > 1

LINK LIBRARY
    long qplaces(NUMBER *q, ZVALUE base)

SEE ALSO
    digit, digits

## Copyright (C) 1999-2003  Landon Curt Noll
##
## Calc is open software; you can redistribute it and/or modify it under
## the terms of the version 2.1 of the GNU Lesser General Public License
## as published by the Free Software Foundation.
##
## Calc is distributed in the hope that it will be useful, but WITHOUT
## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
## or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General
## Public License for more details.
##
## A copy of version 2.1 of the GNU Lesser General Public License is
## distributed with calc under the filename COPYING-LGPL.  You should have
## received a copy with calc; if not, write to Free Software Foundation, Inc.
## 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
##
## Under source code control:   1995/10/03 10:40:02
## File existed as early as:    1995
##
## chongo <was here> /\oo/\     http://www.isthe.com/chongo/
## Share and enjoy!  :-)        http://www.isthe.com/chongo/tech/comp/calc/
