Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоры КГ 2012 весна.docx
Скачиваний:
5
Добавлен:
24.09.2019
Размер:
602.45 Кб
Скачать

26 Visual lisp. Типы данных, предопределенные символы и переменные.

Типы данных

Переменные

Для хранения данных пользователь может вводить свои символы (переменные), не совпадающие по написанию с зарезервированными или ранее занятыми. Соз­дание новых переменных осуществляется с помощью функции setq, например:

(setq rl 15.33 s24 9)

Здесь вводятся переменные r1 и s24, получающие, соответственно, значения 15.33 (вещественное) и 9 (целое). При этом к той части оперативной памяти, ко­торая отведена для текущего рисунка, добавляются участки, занимаемые пере­менными. Если переменной присвоить значение nil, то такая переменная из па­мяти удаляется, и ее место освобождается для других операций LISР.

Переменные могут использоваться в любых выражениях, например;

(setq r6l (+ J 81.4 ysa))

27 Visual lisp. Арифметические и логические функции.

Функция +

(+ 16 30) возвращает 46 (+ 2 13 1.00) возвращает 16.0

Функция -

(- 3) возвращает -3 (- -4 2.1 2.3] возвращает -8.4

Функция *

(*7) возвращает7 (* 5 l.1 -0.З) возвращает -1,65

Функция /

( / 5 1.1 -0.З) возвращает -15.1515 (/ 81) возвращает 81

Если количество аргументов равно 1, то возвращается значение аргумента. Если количество аргументов равно 2 и более, то выполняется деление первого аргумента на произведение всех остальных.

Функция 1+ Увеличивает аргумент на 1 (1+ 2) возвращает 3

Функция 1- Уменьшает аргумент на 1

Функция abs : модуль (abs -1,1) возвращает 1.1

Логические:

Функция =

(= -17,0 -17 -17,000) возвращает т

(= nil) возвращает т (потому что один аргумент) (= 2 30) возвращает nil

Функция /=

(/=5) возвращает Т (/= "2abc" "2аbс") возвращает nil

Фунция <

(< -5.81 0) возвращает т

Функция AND : логическое И

Тип возвращаемого значения: логическое (т, если значения всех аргументов ис­тинны, и nil— в противном случае). К истинным, помимо т. относятся все зна­чения (числовые, строковые и т. д.), кроме nil.

(and T T 4] возвращает т

Функция OR : логическое ИЛИ

Тип возвращаемою значения: логическое (т, если значение хотя бы одного аргу­мента истинно, и nil— в противном случае). К истинным, помимо т, относятся все значения (числовые, строковые и т, д,), кроме nil.

(or т nil т) возвращает т

Функция NOT : логическое отрицание

(not -64.64) возвращает nil

Функция NULL выполняет проверку на nil(null nil) возвращает т (null т) возвращает nil

Функция minusp : проверка числа на отрицательность

Функция zerop : проверка числа на нуль

Функция eq : проверяет равны ли значения двух аргументов или указывают ли они на один и тот же символ

Функция equal : проверяет равенство двух объектов

28 Visual lisp. Функции вычислений.

Функция fix : выполняет операцию усечения числа до целого

(fix -24.51) возвращает - 24

Функция max

Функция min

Функция distance:

Вычисляет расстояние между первой точкой, заданной аргументом <точка1>, и второй точкой, заданной аргументом <точка2>. Если точки трехмерные, то функ­ция рассчитывает угол между осью X и проекцией вектора, идущего из первой точки во вторую точку, на текущую плоскость построений,

(distance '(0 0) ‘(112.7 0 0)) возвращает 112.7

Функция sqrt: (sqrt 49) возвращает 7

Функция sin:

Функция cos:

Функция atan: вычисляет арктангенс

Функция ехр : е в степени (ехр 1.0) возвращает 2.71828

Функция expt : возводит число в степень (expt 3 2) возвращает 9

Функция log : вычисляет натуральный логарифм

Функция set :

Присваивает значение символу, на который ссылается первый аргумент

(set 'cirl 18.9) возвращает 18.9

Функция polar:

Вычисляет координаты второй точки, отстоящей от первой точки, заданной ар­гументом <точка>, на расстояние, величина которою указана в качестве аргумен­та <расстояние>. При этом отрезок, построенный из первой точки во вторую, в проекции на текущую плоскость построений должен образовать с осью X угол, равный значению аргумента <угол> (в радианах).

(polar '(3.1 9.3} 0.235 1.5) возвращает (4.55877 9.64926)