2.3.5. Estructuras Condicionales

CONDICIONAL IF

ESTRUCTURA IF-THEN-ELSE


Evalúa expresiones condicionalmente:
(if expr_prueba expr_then [expr_else])
Si expr_prueba no es nil, evalúa expr_then;
en caso contrario evalúa expr_else.
La función if devuelve el valor de la expresión seleccionada. Si expr_else no existe y expr_prueba es nil, entonces la función if devuelve nil.
  • Función PROGN
    Calcula las expresiones secuencialmente y devuelve el valor de la última expresión
    (progn [expr]...)
    Se suele utilizar progn para calcular varias expresiones cuando sólo se espera, como en cada una de las ramas del IF, una sola expresión.

CONDICIONALES DE USO GENERAL

En muchos casos nos encontraremos que hay más de dos condiciones sobre las que decidir. En estos casos podemos acudir a la función COND, que evalúa una serie de condiciones de prueba secuencialmente.

COND
Se utiliza como la función condicional primaria de Visual LISP
(cond (prueba1 resultado1 ...) ...) 

La función cond acepta cualquier número de listas como argumentos.
Evalúa el primer elemento de cada lista (en el orden indicado) hasta que uno de ellos devuelva un valor distinto de nil. A continuación, evalúa las expresiones que siguen a este elemento y devuelve el valor de la última expresión de la sublista. Si esta sublista sólo contiene un valor (es decir, si falta resultado), se obtiene el valor de la expresión prueba. COND se puede utilizar como una función de tipo case.
Es habitual utilizar T como última (por defecto) expresión de prueba.


Inicio | Índice | Continuar...