Определить значение в каждой строчке - Lisp

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

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

}Я совсем запуталась, очень важная контрольная
1.1. (Defun Izm(x) (Setq x 'новое)) ->
       (Setq x 'старое) ->
       (Izm x) ->
        x->
        Старое->
       (Izm 'x) ->
        x->
1.2. (Defun Izm(x) (Set x 'новое))->
       (Setq x 'старое) ->
       (Izm x) ->
        x ->
        Старое->
       (Izm 'x)->
        x->
 
2. 
1.1. (Defun Izm(x) (Eval 'x)) ->
       (Setq x 'старое) ->
       (Izm 'новое) ->
       x ->
       (Izm 'x) ->
       x ->
       (Izm x) -> 
       x ->
 
1.2. (Defun Izm(x) (Eval x)) ->
       (Setq x 'старое) ->
       (Izm 'новое) ->
        x->
       (Izm 'x) ->
        x ->
       (Izm x) ->
        x ->
       (Setq новое 8)->
       (Izm 'новое) ->
       (Setq старое 5) ->
       (Izm x) ->

Решение задачи: «Определить значение в каждой строчке»

textual
Листинг программы
[1]> (defun izm(x) (setq x 'новое))
IZM
[2]> (setq x 'старое)
СТАРОЕ
[3]> (izm x)
НОВОЕ
[4]> x
СТАРОЕ
[5]> Старое
 
*** - SYSTEM::READ-EVAL-PRINT: variable СТАРОЕ has no value
Имеются следующие варианты продолжения:
USE-VALUE      :R1      Input a value to be used instead of СТАРОЕ.
STORE-VALUE    :R2      Input a new value for СТАРОЕ.
ABORT          :R3      Прервать главный цикл
Break 1 [6]> 
[7]> (izm 'x)
НОВОЕ
[8]> x
СТАРОЕ
[9]> 
 
(defun izm(x) (set x 'новое))
IZM
[10]> (setq x 'старое)
СТАРОЕ
[11]> (izm x)
НОВОЕ
[12]> x
СТАРОЕ
[13]> Старое
НОВОЕ
[14]> (izm 'x)
НОВОЕ
[15]> x
НОВОЕ
[16]> 
 
(defun izm(x) (eval 'x))
IZM
[17]> (setq x 'старое)
СТАРОЕ
[18]> (izm 'новое)
СТАРОЕ
[19]> x
СТАРОЕ
[20]> (izm 'x)
СТАРОЕ
[21]> x
СТАРОЕ
[22]> (izm x)
СТАРОЕ
[23]> x
СТАРОЕ
[24]> 
 
(defun izm(x) (eval x))
IZM
[25]> (setq x 'старое)
СТАРОЕ
[26]> (izm 'новое)
 
*** - EVAL: variable НОВОЕ has no value
Имеются следующие варианты продолжения:
USE-VALUE      :R1      Input a value to be used instead of НОВОЕ.
STORE-VALUE    :R2      Input a new value for НОВОЕ.
ABORT          :R3      Прервать главный цикл
Break 1 [27]> 
[28]> x
СТАРОЕ
[29]> (izm 'x)
СТАРОЕ
[30]> x
СТАРОЕ
[31]> (izm x)
НОВОЕ
[32]> x
СТАРОЕ
[33]> (setq новое 8)
8
[34]> (izm 'новое)
8
[35]> (setq старое 5)
5
[36]> (izm x)
5

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

[1]> (defun izm(x) (setq x 'новое)) IZM [2]> (setq x 'старое) СТАРОЕ [3]> (izm x) НОВОЕ [4]> x СТАРОЕ [5]> - SYSTEM::READ-EVAL-PRINT: variable СТАРОЕ has no value Имеются следующие варианты продолжения: USE-VALUE      :R1      Input a value to be used instead of СТАРОЕ. STORE-VALUE    :R2      Input a new value for СТАРОЕ. ABORT          :R3      Прервать главный цикл Break 1 [6]> [7]> (izm 'x) НОВОЕ [8]> x СТАРОЕ [9]> (defun izm(x) (set x 'новое)) IZM [10]> (setq x 'старое) СТАРОЕ [11]> (izm x) НОВОЕ [12]> x СТАРОЕ [13]> - SYSTEM::READ-EVAL-PRINT: variable СТАРОЕ has no value Имеются следующие варианты продолжения: USE-VALUE      :R1      Input a value to be used instead of СТАРОЕ. STORE-VALUE    :R2      Input a new value for СТАРОЕ. ABORT          :R3      Прервать главный цикл Break 1 [14]> [15]> (izm 'x) НОВОЕ [16]> x СТАРОЕ [17]> (defun izm(x) (eval 'x)) IZM [18]> (setq x 'старое) СТАРОЕ [19]> (izm 'новое) СТАРОЕ [20]> x СТАРОЕ [21]> (izm x) СТАРОЕ [22]> x СТАРОЕ [23]> - EVAL: variable НОВОЕ has no value Имеются следующие варианты продолжения: USE-VALUE      :R1      Input a value to be used instead of НОВОЕ. STORE-VALUE    :R2      Input a new value for НОВОЕ. ABORT          :R3      Прервать главный цикл Break 1 [24]> [25]> (izm 'x)   - EVAL: variable НОВОЕ has no value Имеются следующие варианты продолжения: USE-VALUE      :R1      Input a value to be used instead of НОВОЕ. STORE-VALUE    :R2      Input a new value for НОВОЕ. ABORT          :R3      Прервать главный цикл Break 1 [26]> [27]> x СТАРОЕ [28]> (izm 'x) СТАРОЕ [29]> x СТАРОЕ [30]> (izm x) НОВОЕ [31]> (setq новое 8) 8 [32]> (izm 'новое) 8 [33]> (setq старое 5) 5 [34]> (izm x) 5 [35]> x 5

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


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

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

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