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

UptoLike

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

26
Функция (> <атом 1> <атом 2> . . . ) выполняет сравнение "боль-
ше чем", и если каждый предыдущий <атом> больше последующего, то
она возвращает Т(Тrue), иначе nil.
Примеры: (> 25 13 15) возвращает Т, (> 25 225) возвращает nil.
Функцию (>= <атом1> <атом 2> . . . ) вводят для сравнения
"больше чем". Она возвращает Т(Тrue), если каждый предыдущий элемент
больше или равен последующему, в противном случае функция возвраща-
ет nil.
(not <элемент>). Если <элемент> nil, то такая функция возвраща-
ет Т(Тrue), иначе - nil.
Функцию (and <выражение> . . . ) используют для выполнения ло-
гического И над списком выражений.
Примеры:
1 (setq х 10 y 20) переменным х и у присвоены значения 10 и 20 соот-
ветственно, (if (and (= x 10) (= у 20)) (setq р1 (list x у))) возвращает
список (10 20), состоящий из значений переменных х и у, т. к. заданное
условие истинно (Т(Тrue)).
2 (setq х 10 y 20)
(if (and (= x 20) (= у 20)) (setq z (list x у)) (setq z (+ х у))) возвращает
число 30, т. к. заданное условие F (False).
В первом примере в функции (if (условие) (выражение-тогда)) от-
сутствует факультативный аргумент. Во втором примере (if (условие)
(выражение-тогда) (выражение-иначе)) факультативный аргумент
присутствует и так как заданное условие возвращает F(False), выполняет-
ся выражение-иначе.
Функцию (eq <выражение1> <выражение2> ) применяют для
определения идентичности <выражение1> и <выражение2>. Она воз-
вращает Т, если оба выражения идентичны, иначе nil. С её помощью ус-
танавливают, являются ли два списка одним или нет. Пример:
(eq 'х (саг '(х у)) возвращает Т(Тrue).
(eq 'x (cadr '(x у)) возвращает nil. Смотрим пример использования
функций саг и cadr в п. 2.3.
Функция (equal <выражение1> <выражение2> [<допуск>]) про-
веряет условие равенства значений заданных выражений. Факультативный
     • Функция (> <атом 1> <атом 2> . . . ) выполняет сравнение "боль-
ше чем", и если каждый предыдущий <атом> больше последующего, то
она возвращает Т(Тrue), иначе − nil.
     Примеры: (> 25 13 15) − возвращает Т, (> 25 225) − возвращает nil.
     • Функцию (>= <атом1> <атом 2> . . . ) вводят для сравнения
"больше чем". Она возвращает Т(Тrue), если каждый предыдущий элемент
больше или равен последующему, в противном случае функция возвраща-
ет nil.
     • (not <элемент>). Если <элемент> nil, то такая функция возвраща-
ет Т(Тrue), иначе - nil.
     • Функцию (and <выражение> . . . ) используют для выполнения ло-
гического И над списком выражений.
     Примеры:
1 (setq х 10 y 20) − переменным х и у присвоены значения 10 и 20 соот-
  ветственно, (if (and (= x 10) (= у 20)) (setq р1 (list x у))) − возвращает
  список (10 20), состоящий из значений переменных х и у, т. к. заданное
  условие истинно (Т(Тrue)).
2 (setq х 10 y 20)
  (if (and (= x 20) (= у 20)) (setq z (list x у)) (setq z (+ х у))) возвращает
  число 30, т. к. заданное условие F (False).
    В первом примере в функции (if (условие) (выражение-тогда)) от-
сутствует факультативный аргумент. Во втором примере (if (условие)
(выражение-тогда) (выражение-иначе)) факультативный аргумент
присутствует и так как заданное условие возвращает F(False), выполняет-
ся выражение-иначе.
      • Функцию (eq <выражение1> <выражение2> ) применяют для
определения идентичности <выражение1> и <выражение2>. Она воз-
вращает Т, если оба выражения идентичны, иначе − nil. С её помощью ус-
танавливают, являются ли два списка одним или нет. Пример:
(eq 'х (саг '(х у)) − возвращает Т(Тrue).
(eq 'x (cadr '(x у)) − возвращает nil. Смотрим пример использования
функций саг и cadr в п. 2.3.
     • Функция (equal <выражение1> <выражение2> [<допуск>]) про-
веряет условие равенства значений заданных выражений. Факультативный

                                     26