CLHS: Function LCM

#

Function LCM

Syntax:

lcm `&rest` integers => least-common-multiple

Arguments and Values:

integer---an integer.

least-common-multiple---a non-negative integer.

Description:

lcm returns the least common multiple of the integers.

If no integer is supplied, the integer `1` is returned.

If only one integer is supplied, the absolute value of that integer is returned.

For two arguments that are not both zero,

     (lcm a b) ==  (/ (abs (* a b)) (gcd a b))

If one or both arguments are zero,

     (lcm a 0) ==  (lcm 0 a) ==  0

For three or more arguments,

     (lcm a b c ... z) ==  (lcm (lcm a b) c ... z)

Examples:

     (lcm 10) =>  10
     (lcm 25 30) =>  150
     (lcm -24 18 10) =>  360
     (lcm 14 35) =>  70
     (lcm 0 5) =>  0
     (lcm 1 2 3 4 5 6) =>  60

Side Effects: None.

Affected By: None.

Exceptional Situations:

Should signal type-error if any argument is not an integer.

See Also:

gcd

Notes: None.

The following X3J13 cleanup issue, not part of the specification, applies to this section:

- LCM-NO-ARGUMENTS:1

Copyright 1996-2005, LispWorks Ltd. All rights reserved.