2011-04-18 11 views
17

Estoy aprendiendo LISP en este momento y no he encontrado nada sobre cómo obtener el módulo en LISP. ¿Hay alguna forma de obtenerlo dentro de una función? Sé que otros lenguajes como Java usan% para encontrar el módulo, pero ¿qué usa LISP?Cómo obtener el módulo en LISP

+0

Qué dialecto de Lisp es esta pregunta acerca de? –

Respuesta

21

¿Qué hay de mod, desde el page:

(mod -1 5) => 4                
(mod 13 4) => 1                
(mod -13 4) => 3                
(mod 13 -4) => -3     
10

Como alternativa a mod, la función floor Common Lisp devuelve módulo como su segundo valor. Esto es útil en casos donde también está interesado en el cociente.

0

En Lisp, el comando para la función de módulo es rem -Recordatorio Ejemplo (rem 13 4) Resultado 1

2

Hay dos opciones:

mod y rem son generalizaciones de el módulo y el resto funcionan respectivamente.

mod realiza el piso de operación en número y divisor y devuelve el resto del funcionamiento del piso.

rem realiza la operación truncar en número y divisor y devuelve el resto de la operación de truncar.

mod y rem son las funciones de módulo y el resto cuando el número y el divisor son números enteros.

Ejemplos:

> (rem -1 5) => -1 
> (mod -1 5) => 4 
> (mod 13 4) => 1 
> (rem 13 4) => 1 

Fuente:http://clhs.lisp.se/Body/f_mod_r.htm