Мне нужно всего лишь найти синтаксические ошибки, второй день ломаю голову, в условии есть ошибки - Lisp

Узнай цену своей работы

Формулировка задачи:

Мне нужно всего лишь найти синтаксические ошибки, второй день ломаю голову, в условии есть ошибки. А в каком именно условии не знаю
(COND 
( (EQ x 'cat) (SETQ x 'dog) )
( (= x 5) (+ x 5) )
( (= x y) (SETQ x 5) (SETQ y 0) )
(T 5)
)
и еще никак не могу разобраться с этим заданием:
(COND 
((= X 5) (SETQ X (+ X 10))) 
((SYMBOLP X) (SETQ X (ATOM X))) 
((EQ (LIST NIL) NIL) (SETQ X (LIST X))) 
)
Какие значения могут быть связаны с символом Х после завершения условной функции COND? Преподаватель, говорит их несколько...и тут я вообще запуталась, помогите пожалуйста.

Решение задачи: «Мне нужно всего лишь найти синтаксические ошибки, второй день ломаю голову, в условии есть ошибки»

textual
Листинг программы
(cdr (cdr '(5)))  ;; 1
 
==> NIL
 
(car (cdr '(5)))  ;; 2
 
==> NIL
 
(cdr (car '(5)))  ;; 3
 
Аргумент CDR - атом (5)
==> ERRSTATE
 
(caar '(5))   ;; 4
 
Аргумент CAR - атом (5)
==> ERRSTATE
 
(cddr '(5))   ;; 5
 
==> NIL
 
(caar '(5))   ;; 6
 
Аргумент CAR - атом (5)
==> ERRSTATE

Объяснение кода листинга программы

  1. (cdr (cdr '(5))) Аргумент CDR - атом (5) Результат: NIL
  2. (car (cdr '(5))) Аргумент CAR - атом (5) Результат: NIL
  3. (cdr (car '(5))) Аргумент CDR - атом (5) Результат: ERRSTATE
  4. (caar '(5)) Аргумент CAR - атом (5) Результат: ERRSTATE
  5. (cddr '(5)) Результат: NIL
  6. (caar '(5)) Аргумент CAR - атом (5) Результат: ERRSTATE

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.154 из 5
Похожие ответы