Какая разница между невычисленным списком и списком? - Lisp
Формулировка задачи:
Какая разница между невычисленным списком и списком? Я немного не врубаюсь прост.
(defvar x 10) X * x 10 * (defvar k '(x x x)) K * k (X X X) * (setf k (list x x x)) (10 10 10) * k (10 10 10) * (defvar z '(x x x)) Z * z (X X X) * (car z) X *
Почему (defvar k '(x x x)) не даст (10 10 10)?
Решение задачи: «Какая разница между невычисленным списком и списком?»
textual
Листинг программы
(let ((x 111) (y 222) (z 333) (u '(a b c))) `(x ,x y ,y z ,z u ,u u ,@u)) ==> (x 111 y 222 z 333 u (a b c) u a b c)
Объяснение кода листинга программы
В данном коде используется функция let
, которая создает четыре переменные: x
, y
, z
, u
. Переменным x
, y
, z
присваиваются значения 111, 222, 333 соответственно. Переменной u
присваивается список (a b c)
. Затем с помощью списковой нотации происходит присваивание значений переменным x
, y
, z
, u
. В результате получается список (x 111 y 222 z 333 u (a b c) u a b c)
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д