Ejemplos LISP

4
CLISP ;Ejemplo usando funciones de LISP ;Nombres de los ejes del sistema de coordenadas (DEFCONSTANT COORDENADAS '(X Y Z)) ;Lista de as medidad de un paralelepipedo (DEFVAR MEDIDAS '(3.5 8 2)) (DEFVAR X) (DEFVAR Y) (DEFVAR Z) ;Asignaciones (SETF X (FIRST MEDIDAS)) (SETF Y (FIRST (REST MEDIDAS))) (SETF Z (FIRST (REST (REST MEDIDAS)))) (DEFVAR *VOLUMEN*) (DEFVAR *AREA*) ; Calculo del volumen del paralelepípedo =X*Y*Z. (SETF *VOLUMEN* (* X Y Z)) ; Cálculo del área del paralelepípedo =2XY +2XZ + 2YZ. (SETF *AREA* (+ (* X Y 2) (* X Z 2) (* Y Z 2)))

Transcript of Ejemplos LISP

Page 1: Ejemplos LISP

CLISP

;Ejemplo usando funciones de LISP

;Nombres de los ejes del sistema de coordenadas

(DEFCONSTANT COORDENADAS '(X Y Z))

;Lista de as medidad de un paralelepipedo

(DEFVAR MEDIDAS '(3.5 8 2))

(DEFVAR X)

(DEFVAR Y)

(DEFVAR Z)

;Asignaciones

(SETF X (FIRST MEDIDAS))

(SETF Y (FIRST (REST MEDIDAS)))

(SETF Z (FIRST (REST (REST MEDIDAS))))

(DEFVAR *VOLUMEN*)

(DEFVAR *AREA*)

; Calculo del volumen del paralelepípedo =X*Y*Z.

(SETF *VOLUMEN* (* X Y Z))

; Cálculo del área del paralelepípedo =2XY +2XZ + 2YZ.

(SETF *AREA* (+ (* X Y 2) (* X Z 2) (* Y Z 2)))

Page 2: Ejemplos LISP

;Ejemp6.lsp

;Ejemplo con funciones definidas por el usuario

(DEFUN VOLUMEN (X Y Z)

"Calcula el volumen del paralelepípedo"

(* X Y Z))

(DEFUN AREA (X Y Z)

"Calcula el área del paralelepípedo"

(+ (* X Y 2) (* X Z 2) (* Y Z 2)))

(DEFUN AREA_Y_VOLUMEN (X Y Z)

"Calcula e imprime el volumen y área de un paralelepípedo"

(format T "~%-----~%Calculo de volumen y área de un paralelepípedo:")

(format T "~% Medidas X=~S Y=~S Z=~S" X Y Z)

(format T "~% El área del paralelepípedo es ~S" (AREA X Y Z))

(format T "~% El volumen del paralelepípedo es ~S" (VOLUMEN X Y Z))

(format T "~%-----~%"))

Page 3: Ejemplos LISP
Page 4: Ejemplos LISP