Red de conocimiento informático - Aprendizaje de programación - ¿Cuál es la diferencia entre if y cond en lenguaje Lisp? Si hay dos condiciones, if y cond else tienen el mismo efecto.

¿Cuál es la diferencia entre if y cond en lenguaje Lisp? Si hay dos condiciones, if y cond else tienen el mismo efecto.

Cuando hay dos situaciones, simplemente use la función if. Cuando hay más de dos situaciones, es más conveniente usar la función cond.

Ejemplo 1: Si a>0, entonces b=+1; de lo contrario, b=-1

(if (a>0) (setq b +1) (setq b -1))

Ejemplo 2: Si a>=100, entonces b=2; si 10<=a<100, entonces b=1;

(cond

((>= a 100) (setq b 2))

((>= a 10) (setq b 1))

(t (setq b 0))

)

¡Espero que te ayude!