Список – последовательный набор элементов, связанных друг с другом.
Этот набор элементов должен являться набором объектов одного и того же доменного типа, таким образом список может состоять из целых чисел, символов, строк, структур и действительных чисел. Элементы списка заключаются в квадратные скобки и отделяются друг от друга запятыми, например:
[“a”,”b”,”c”] ; [25,56,78]
В примере элементы обеих списков имеют один и тот же доменный тип, это правило является обязательным для всех списков, исключением являются списки структур. Список который не содержит элементов называется пустым и обозначается []. Каждый список имеет “голову” и “хвост”, “голова” – первый элемент списка, а “хвост” – все остальные. Эти два понятия являются ключевыми при работе со списками на Турбо-Прологе. Например:
Таблица 1.
Всегда “голова” – отдельный неделимый элемент, “хвост” – в общем случае список.
Введение в программу на Прологе списков отражается в 3-х разделах программы:
1. Домены
2. Предикаты
3. Клаузы
Например имеется список студентов:
1. Домены – st =symbol
st_list=st* (* - признак)
2. Предикаты - students(st_list)
3. Клаузы – students(“Архипов”,”Князевский”,”Зданович”,”Тчуенте”)
Далее к списку можно обращаться в такой форме:
Таблица 2.
При использовании таких запросов длина списка должна быть строго фиксированной. Целесообразно использовать списки там, где длина их заранее не определена и содержимое их неизвестно.
|