Параметрические изображения объектов проектирования на основе использования языка АВТОЛИСП в среде АВТОКАД. Притыкин Ф.Н. - 49 стр.

UptoLike

Составители: 

49
дополненным элементом. Эта функция является основным конструктором
списка.
Пример: пусть необходимо в список (а в) в начало списка поместить
элемент с. Тогда (cons с '(а в)) возвращает список (с а в). Здесь новым
элементом является с.
Функцию (nth < i > < список > ) используют для извлечения из спи-
ска i-гo элемента. Для первого элемента i = 0. В случае, если i > (n + 1), где
n число элементов в списке, функция возвращает nil.
Пример: (nth 2 '(7 16 23 4)) Здесь i = 2, n = 0, 1, 2, 3. Поэтому воз-
вращается третий элемент списка - 23.
(last <список >) возвращает последний элемент списка, который
может быть либо атомом, либо списком.
Пример: пусть из списка (5 (с d) n) требуется извлечь последний
элемент n. Тогда (last '( 5 (с d) n)) возвращает атом n.
(cdr <список>) возвращает обновленный <список> без первого
элемента. Пример: (cdr '(х у z)) - возвращает (у z), (cdr '()) возвращает
nil.
(append <выражение1> <выражение2>...) Эта функция из за-
данных выражений, представляющих собой списки, формирует новый
список путем слияния исходных. Пример: (append '(х у) (z)) возвращает
(х у z).
(length <список>) определяет число элементов в <списке> и воз-
вращает это число. Примеры: (length '(х у z)) возвращает 3,
(length '()) возвращает 0 (пустой список).
(mapcar <функция> <список1> <список2> ...) рассматривает
<список1>, <список2> и так далее как аргументы заданной <функции>.
Она возвращает результат выполнения функции с указанными аргумента-
ми.
Пример: (mapcar 'sqrt (list 9 16 25)) возвращает (3.0 4.0 5.0). Этот
результат эквивалентен следующим: (sqrt 9) = 3.0, (sqrt I6) = 4.0, (sqrt 25)
= 5.0.
(foreach <имя> <список> <выражение> ...) присваивает каждому
элементу <списка> заданное <имя> и выполняет <выражение> для каж-
дополненным элементом. Эта функция является основным конструктором
списка.
     Пример: пусть необходимо в список (а в) в начало списка поместить
элемент с. Тогда (cons с '(а в)) − возвращает список (с а в). Здесь новым
элементом является с.
     • Функцию (nth < i > < список > ) используют для извлечения из спи-
ска i-гo элемента. Для первого элемента i = 0. В случае, если i > (n + 1), где
n − число элементов в списке, функция возвращает nil.
     Пример: (nth 2 '(7 16 23 4)) − Здесь i = 2, n = 0, 1, 2, 3. Поэтому воз-
вращается третий элемент списка - 23.
     • (last <список >) возвращает последний элемент списка, который
может быть либо атомом, либо списком.
     Пример: пусть из списка (5 (с d) n) требуется извлечь последний
элемент n. Тогда (last '( 5 (с d) n)) − возвращает атом n.
     • (cdr <список>) возвращает обновленный <список> без первого
элемента. Пример: (cdr '(х у z)) - возвращает (у z), (cdr '()) − возвращает
nil.
     • (append <выражение1> <выражение2>...) Эта функция из за-
данных выражений, представляющих собой списки, формирует новый
список путем слияния исходных. Пример: (append '(х у) (z)) − возвращает
(х у z).
     • (length <список>) определяет число элементов в <списке> и воз-
вращает это число. Примеры: (length '(х у z)) − возвращает 3,
(length '()) − возвращает 0 (пустой список).
     • (mapcar <функция> <список1> <список2> ...) рассматривает
<список1>, <список2> и так далее как аргументы заданной <функции>.
Она возвращает результат выполнения функции с указанными аргумента-
ми.
     Пример: (mapcar 'sqrt (list 9 16 25)) − возвращает (3.0 4.0 5.0). Этот
результат эквивалентен следующим: (sqrt 9) = 3.0, (sqrt I6) = 4.0, (sqrt 25)
= 5.0.
     • (foreach <имя> <список> <выражение> ...) присваивает каждому
элементу <списка> заданное <имя> и выполняет <выражение> для каж-


                                     49