Математические функции
Богатый набор математических функций, предоставляемый CLIPS, позволяет использовать эту среду не только для решения логических задач, но и для серьезных математических вычислений. Математические функции CLIPS разделены на два пакета: набор стандартных и набор расширенных математических функций. Стандартные математические функции перечислены в табл. 15.3.
Таблица 15.3. Стандартные математические функции
Функция | Описание |
+ | Сложение |
- | Вычитание |
* | Умножение |
/ | Деление |
div | Целочисленное деление |
max | Максимальное числовое значение |
min | Минимальное числовое значение |
abs | Абсолютное значение |
float | Преобразование в тип float |
integer | Преобразование в тип integer |
Перечисленные функции могут быть использованы только с числовыми аргументами. Если в математическую функцию будет передан аргумент строкового или другого неподходящего типа, функция вернет сообщение об ошибке. Ниже приведен синтаксис и описаны некоторые особенности стандартных математических функций.
Функция + возвращает сумму своих аргументов. Если все аргументы функции принадлежат типу float, возвращаемое функцией значение также будет вещественного типа. Аналогично возвращаемый функцией результат принадлежит типу integer, если все аргументы целые. Сложение невыполнимо, если типы переданных аргументов различаются (integer и float). В этом случае функция возвращает промежуточное значение, полученное при сложении аргументов одинакового типа.
Определение 15.5. Функция +
(+ <выражение!> <выражение2>+)
Функция - возвращает значение ее первого аргумента минус все последующие.
Определение 15.6. Функция –
(- <выражение!> <выражение2>+)
Функция * возвращает произведение своих аргументов. Все замечания по поводу типов аргументов, сделанные для функции +, в полной мере применимы к аргументам функций - и *.
Определение 15.7. Функция *
(* <выражение1> <выражение2>+)
Функция / возвращает частное от деления первого аргумента на каждый из последующих. Как и в случаях функций +, - и *, функция / не допускает смешанного набора аргументов. Однако по умолчанию делимое автоматически преобразуется в число с плавающей точкой. Таким образом, все последующие аргументы и результат выполнения функции должны представлять собой числа с плавающей точкой. Функция set-auto-float-dividend позволяет менять подобное поведение системы. Если, например, режим автоматического преобразования чисел при делении отключен, выражение (/ 4 3 4.0) возвратит значение 0.25, в то время как при конфигурации по умолчанию результатом подобного действия является 0.333333333.
Определение 15.8. Функция /
(/ <выражение1> <выражение2>+)
Функция div возвращает частное от деления первого аргумента на каждый из последующих. Все аргументы данной функции автоматически преобразуются в целые для выполнения целочисленного деления. Эта функция возвращает значение типа integer.
Дата добавления: 2021-12-14; просмотров: 227;