Основы проектирования систем искусственного интеллекта

       

Арифметические выражения


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


Арифметическое выражение является числом или структурой. В структуру может входить одна или более компонент, таких, как чис­ла, арифметические операторы, арифметические списковые выраже­ния, переменная, конкретизированная арифметическим выражени­ем, унарные функторы, функторы преобразования и арифметиче­ские функторы.

Числа. Числа и их диапазоны определяются в конкретной реали­зации Пролога.

Арифметические операторы. + - * / mod div

Арифметические списковые выражения. Если Х - арифметиче­ское выражение, то список [X ] также является арифметическим вы­ражением, например [1,2,3]. Первый элемент списка используется как операнд в выражении. Скажем,

X is ([l,2,3]+5)

имеет значение 6.

Арифметические списковые выражения полезны и при обработке символов, поскольку последние могут рассматриваться как неболь­шие целые числа. Например, символ "а" эквивалентен [97 ] и, буду­чи использован в выражении, вычисляется как 97. Поэтому значение выражения «р»+"А"-"а" равно 80, что соответствует коду ASCII для «Р».

Переменная, конкретизированная арифметическим выражени­ем. Примеры:

Х-5+2 и У-3*(2+А)

Унарные функторы. Примеры:

+(Х) и -(У)

Функторы преобразования. В некоторых реализациях Пролога имеется арифметика с плавающей точкой, а следовательно, и функ­торы преобразования. Например:

float (X) преобразует целое число Х в число с плавающей точкой.

Математические функторы. Пример: квадрат(Х) объявлен как оператор и эквивалентен арифметическому выражению (Х*Х).



Содержание раздела