Турбо-Пролог требует указания типов для всех аргументов (объектов) каждого предиката программы. В разделе predicates НУЖНО ОПИСАТЬ ТИП ОБЪЕКТОВ ДЛЯ КАЖДОГО ПРЕДИКАТА.
Турбо-Пролог позволяет конструировать свои собственные типы объектов из базисных типов доменов. Рассмотрим вначале базисные типы доменов.
Турбо-Пролог имеет 6 встроенных типов доменов: СИМВОЛЫ, ЦЕЛЫЕ ЧИСЛА, ДЕЙСТВИТЕЛЬНЫЕ ЧИСЛА, СТРОКИ, СИМВОЛИЧЕСКИЕ ИМЕНА И ФАЙЛЫ. Тип каждого из доменов должен быть объявлен в разделе программы domains.
В таблице 3.1 приведены все 6 стандартных типов доменов Турбо-Пролога.
Таблица 3.1.
Тип данных
| Ключевое слово
| Диапазон значений
| Примеры использования
|
Символы
| сhar
| Все возможные символы
| 'b', '#', '%', 'B', '\13'
|
Целые числа
| integer
| От —32768 до 32767
| -84,2349
|
Действи-тельные числа
| real
| от +1Е-307 до +1Е308
| -42769, 093, 1.25Е23, 5.15Е-9
|
Строки
| string
| Последовательность символов (не более 250)
| «PROLOG»,
«123», «Мзри»
|
Символи-ческие имена
| symbol
| 1. Последовательность букв, цифр и подчерков; первый символ — строчная буква
2. Последовательность любых символов, заключенная в кавычки
| mary, answer_2;
«Агата Кристи»,
«3.1412»
|
Файлы
| file
| Допустимое в DOS имя файла
| BIRDS.DBA,
mail.txt
|
Операторы ввода:
readchar(X) readint(X) readreal(X) readln(X), где X — переменная соответствующего типа; в операторе readln(X) X может быть string или symbol.
Кроме того, оператор readterm(my_domain,X) позволяет ввести переменную уже описанного в разделе domains типа my_domain.