- •Логическое программирование (turbo prolog 2.0)
- •Основные понятия
- •Основные окна и меню системы Турбо-Пролог 2.0
- •Структура программы на Турбо-Прологе
- •Стандартные типы доменов
- •Файл справки
- •Создание, редактирование и выполнение программы в системе Турбо-Пролог
- •Выделение фрагмента текста, копирование, перемещение, удаление
- •Сохранение программы
- •Трассировка программы
- •Работа с окнами системы Турбо-Пролог
Стандартные типы доменов
Турбо-Пролог имеет следующие стандартные типы доменов:
char – символ, заключенный между двумя знаками апострофа (например, 'а');
integer – целые числа в пределах от -32768 до 32767;
real – вещественные числа, состоящие из знака (необязателен), цифр характеристики десятичной точки (необязательна), цифр мантиссы и экспоненциальной части (необязательна), включающей разделитель, знак порядка и порядок; раз решены числа в пределах от +/-1е-307 до +/-1е+308; при необходимости целые числа автоматически преобразуются в вещественные;
string – строка – последовательность символов, заключенная в кавычки (например, "Mary likes: ");
symbol – идентификатор; разрешены два формата идентификаторов:
последовательность букв, цифр, знаков подчеркивания, где первый символ – строчная буква;
последовательность символов, заключенная в кавычки (этот формат используется, если идентификатор содержит в себе пробелы или если идентификатор не начинается со строчной буквы).
file – имя файла.
Файл справки
Данные методические указания содержат информацию лишь об основных возможностях Турбо-Пролога. Для более подробного ознакомления со встроенными предикатами системы можно воспользоваться файлом справки, который можно вызвать, нажав F1 при активном окне редактора. Либо можно открыть файл PROLOG.HLP, расположенный в директории Турбо-Пролога.
Создание, редактирование и выполнение программы в системе Турбо-Пролог
Вызов редактора производится либо командой Edit в основном меню, либо просто нажатием буквы Е, если ни одно окно не активно, либо комбинацией Alt-E.
В окне редактора введите следующую программу:
В этой программе использованы следующие встроенные предикаты Турбо-Пролога:
makewindow(1,7,7, "My first program",4,56,10,22) – создает окно, где
1 – номер окна;
7 – цвет текста в окне (7 – серый);
7 – цвет рамки окна;
"My first program" – название окна;
4,56 – координаты верхнего левого угла окна. Диапазон координат зависит от разрешения экрана, которое задается в пункте меню Setup|Miscellaneous|Screen Mode, причем первая цифра – это положение по вертикали (координата у), а вторая – по горизонтали (координата х) – соответственно – номер строки и столбца;
10,22 – число строк и столбцов окна (высота и ширина).
nl – вызывает переход на новую строку.
cursor(4,5) – помещает курсор в позицию с координатами (4, 5).
4 – координата у (вниз), 5 – координата х (вправо);
readln(S) – считывает символьную строку;
write(X1, Х2, …, ХN) – осуществляет вывод данных.
Несколько символьных объектов имеют специальное значение:
Number – символ c номером Number в стандарте ASCII;
– переход на новую строку;
– символ табуляции.
Например, следующие три предиката
write(’’) /* 10 – код конца строки */
write(’ ’)
n1
вызовут переход к новой строке.
Если в качестве аргументов указаны не значения, а переменные, не связанные ранее с какими-либо значениями (свободные переменные), то данный предикат присваивает переменным соответственно значения текущих координат курсора.
Для выхода из редактора нужно нажать Esc.
Чтобы оттранслировать и выполнить программу выберете пункт меню Run или просто нажмите R, когда никакое окно не выбрано, или Alt+R, когда выбрано любое окно.
По требованию программы введите Ваше имя и нажмите Enter.
Нередко при первом запуске программы, программисту приходится исправлять ошибки в тексте программы. При обнаружении ошибки управление передается редактору. Исправив ошибку, можно вместо нажатия Esc нажать F10. По этой команде происходит автоматический выход из редактора и запуск программы на выполнение. Если после перезапуска обнаружится вторая ошибка, надо так же исправить ее и нажать F10 снова. Если больше ошибок нет, программа будет оттранслирована и выполнена правильно.
