Skip to content

Instantly share code, notes, and snippets.

@jorarmarfin
Last active July 18, 2024 21:57
Show Gist options
  • Save jorarmarfin/dae84fa08d0cf4a4e3d4e628bfab6d00 to your computer and use it in GitHub Desktop.
Save jorarmarfin/dae84fa08d0cf4a4e3d4e628bfab6d00 to your computer and use it in GitHub Desktop.
Practicando Lisp
;Crear un programa empleando LISP que reciba una lista de valores numéricos y
;devuelva otra lista solo con los valores múltiplos de 3 y estos elevados al cubo.
(defun multiplotres (lista)
(mapcan
(lambda (x)
(if (= (mod x 3) 0)
(list (* x x x))
nil)
)
lista
)
)
;Crear un programa empleando LISP que reciba una lista de valores numéricos y
;devuelva otra lista solo con los valores pares y luego divididos entre 4.
(defun paresdivididos (lista)
(mapcan
(lambda (x)
(if (= (mod x 2) 0)
(list (/ x 2))
nil)
)
lista
)
)
;https://onecompiler.com/commonlisp/42kfv38yw
; Convertir n -> (2*n)^2 Si es impar
(
defun filtro(datos)
(mapcan
(
lambda (x) (when (oddp x) (list (expt (* 2 x) 2)))
)
datos
)
)
(
defun mulLambda(lista num)
(mapcar
(lambda (x) (* x num))
lista
)
)
( defun impar(lista)
(mapcan
(lambda (x) (when (oddp x) (list x) ))
lista
)
)
; invocación
(print (filtro '(1 2 3 4)))
(print (impar '(1 2 3 4)))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment