NAME
    perm - permutation number

SYNOPSIS
    perm(x, y)

TYPES
    x           int
    y           int

    return      int

DESCRIPTION
    Return the permutation number P(x,y) which is defined as:

               x!
            --------
             (x-y)!

    This function computes the number of permutations in which y things
    may be chosen from x items where order in which they are chosen matters.

EXAMPLE
    ; print perm(7,3), perm(7,4), perm(7,5), perm(3,0), perm(0,0)
    210 840 2520 3 0

    ; print perm(2^31+1,3)
    9903520314283042197045510144

LIMITS
    x >= y >= 0
    y < 2^24

LINK LIBRARY
    void zperm(NUMBER x, y, *ret)

SEE ALSO
    comb, fact, randperm

## Copyright (C) 1999-2006  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:   1994/10/20 04:03:02
## File existed as early as:    1994
##
## chongo <was here> /\oo/\     http://www.isthe.com/chongo/
## Share and enjoy!  :-)        http://www.isthe.com/chongo/tech/comp/calc/
