Как использовать функцию мода на LISPS, используя управляющие структуры - PullRequest
0 голосов
/ 07 ноября 2018

Я новичок в LISP, есть ли способ использовать mod со структурами управления, if операторы.

например, имеющий (if (mod 4 2) (+ 2 2) (- 9 2)). Что возвращает выражение, 0, nil, T?

1 Ответ

0 голосов
/ 07 ноября 2018

В Лиспе единственное значение false равно nil, поэтому 0 равно true . Таким образом, (mod 4 2) возвращает 0, что является истиной, что означает, что

(if (mod 4 2)
    (+ 2 2)
    (- 9 2))

возвращает 4, а

(if (/= 0 (mod 4 2))
    (+ 2 2)
    (- 9 2))

возвращает 7.

...