ВУЗ:
Составители:
Рубрика:
30
owns (anna, book («Prolog: a relation language and its applications»,
«John Malpas»)).
owns (irina, record («Elton John», «Ice Fair», «popular»)).
owns (petr, record («Benny Goodman», «The King of Swing», »jazz»)).
owns (anna record («Madonna», «Madonna», «popular»»)).
goal
owns (X, record(_, _, «jazz»)
Visual Prolog позволяет конструировать многоуровневые составные
термы. Например, в терме record («Elton John», «Ice Fair», «popular») вместо
фамилии артиста можно использовать новую структуру, которая будет
описывать артиста более детально:
artist=art(family,name),
family,name=symbol,
при этом терм будет выглядеть следующим образом: record
(art(“Elton”,”John”),«Ice Fair», «popular»).
2.10 Использование списков
Список является составной рекурсивной структурой данных, хотя явно
и не объявляется
как рекурсивная структура. Список – это упорядоченный
набор объектов одного и того же типа. Элементами списка могут быть целые
числа, действительные числа, символы, строки, символические имена и
структуры. Порядок расположения элементов в списке играет важную роль:
те же самые элементы списка, упорядоченные иным способом, представляют
уже совсем другой список [4].
Совокупность элементов
списка заключается в квадратные скобки ([]),
элементы друг от друга отделяются запятыми. Список может содержать
произвольное число элементов, единственным ограничением является объем
оперативной памяти. Количество элементов в списке называется его длиной.
Список может содержать один элемент и даже не содержать ни одного
элемента. Список, не содержащий элементов, называется пустым или
нулевым списком
.
Непустой список можно рассматривать как список, состоящий из двух
частей: головы – первого элемента списка; и хвоста – остальной части
списка. Голова является элементом списка, хвост является списком. Голова
списка – это неделимое значение, хвост представляет собой список,
составленный из того, что осталось от исходного списка в результате
«отделения головы». Этот новый список
обычно можно делить и дальше.
Если список состоит из одного элемента, то его можно разделить на голову,
которой будет этот самый элемент, и хвост, являющийся пустым списком.
Пустой список нельзя разделить на голову и хвост!
Операция деления списка на голову и хвост обозначается при помощи
вертикальной черты (|):
[Head | Tail].
Страницы
- « первая
- ‹ предыдущая
- …
- 28
- 29
- 30
- 31
- 32
- …
- следующая ›
- последняя »