- •Общие сведения о Прологе, области применения, отличия Пролога от других языков программирования.
- •6. Утверждения программы Турбо-Пролога: факты и правила.
- •7. Раздел goal программы Visual Prolog.
- •8. Этапы программирования на Visual Prolog.
- •9.Декларативный и процедурный смысл программы на Прологе.
- •10.Сопоставление. Правила сопоставимости термов, структур.
- •12.Арифметика Visual Prolog. Арифметические функции.
- •13,14. Рекурсия в Visual Prolog. Пример рекурсивного правила (вычисление факториала, возведение числа в целую степень).
- •14.Рекурсия и эффективность рекурсивных правил на Visual Prolog .
- •15 Стандартные предикаты. Поточный шаблон стандартных предикатов.
- •16.Стандартные предикаты ввода-вывода в Прологе.
- •17.Отсечение в программах на Прологе.
- •18.Отрицание в правилах Visual Prolog.
- •19.Использование составных объектов в Visual Prolog. Простые и составные структуры.
- •20. Списки как основная структура данных в Visual Prolog. Описание списков. Голова и хвост списка .
- •23. Преобразование строки в список символов или атомов.
- •Преобразование строки в символ
- •24.Преобразование данных из одного типа в другой.
- •Преобразование строки в символ
- •25. Преобразование, определяемые пользователем. Пользователь может определить преобразование, не предусмотренные предикатами. Например: целые числа в действительные и наоборот.
- •26. Предикаты Visual Prolog для работы с файлами.
- •27. Описание файловых доменов, переадресация внешних устройств.
- •28. Запись данных в файл на Visual Prolog
- •29. Чтение данных из файла на Visual Prolog
- •30. Дозапись данных в конец существующего файла на Visual Prolog.
- •31.Создание меню средствами Visual Prolog.
- •32.Способы организации цикла в программах на Прологе.
- •33.Создание динамических баз данных средствами Visual Prolog.
- •34. Статические и динамические базы данных в программах на Visual Prolog.
- •35.Способы занесения информации в динамическую базу данных на Visual Prolog.
- •36.Предикаты Турбо-Пролога для работы с базой данных.
25. Преобразование, определяемые пользователем. Пользователь может определить преобразование, не предусмотренные предикатами. Например: целые числа в действительные и наоборот.
predicates
conv_real_int (real, integer)
clauses
conv_real_int (R, N):- R=N.
26. Предикаты Visual Prolog для работы с файлами.
openread(СимволичИмяФайла,ИмяФайлаОС) (file,string) - (i,i) – открытие файла для чтения;
openwrite(СимволичИмяФайла, ИмяФайлаОС) (file,string) - (i,i) – открытие файла для записи;
openappend(СимволичИмяФайла, ИмяФайлаОС) (file,string) - (i,i) – открытие файла для дозаписи в конец существующего файла;
openmodify(СимволичИмяФайла, ИмяФайлаОС) (file,string) - (i,i) – открытие файла для модификации (чтения/записи);
readdevice(СимволичИмяФайла) (file) - (i) (o) – переадресация устройства чтения;
writedevice(СимволичИмяФайла) (file) - (i) (o) – переадресация устройства записи;
closefile(СимволичИмяФайла) (file) - (i) – закрытие файла;
filepos(СимволичИмяФайла,Позиция,Режим) (file,real,integer) - (i,i,i) (i,o,i) – установка или определение позиции указателя файла; Режим: 0 – относительно начала файла, 1– относительно текущей позиции файла, 2 – относительно конца файла; для шаблона (i,o,i) Режим=0;
eof(СимволичИмяФайла) (file) - (i) – проверка на конец файла;
flush(СимволичИмяФайла) (file) - (i) – сброс данных из внутреннего файлового буфера в заданный файл;
existfile(ИмяФайлаОС) (string) - (i) – проверка наличия файла;
filemode (СимволичИмяФайла,Режим)(file,integer) - (i,i) – установка указанного файла в текстовый или двоичный режим: Режим=0 – двоичный, Режим=1 –текстовй;
deletefile(ИмяФайлаОС) (string) - (i) – удаление файла ;
renamefile(СтароеИмяФайлаОС, НовоеИмяФайлаДОС) (string,string) - (i,i) – переименование файла;
disk(ПутьОС) (string) - (i) (o) – установление пути к файлу;
dir(ПутьОС,ШаблонФайла,ИмяФайлаОС) (string,string,string) - (i,i,o) – выбор файла из указанного директория;
file_str(ИмяФайлаОС,Строка) (string,string) – (i,o) (i,i) – запись содержимого текстового файла в строку или наоборот.
27. Описание файловых доменов, переадресация внешних устройств.
Пролог позволяет переадресовывать логические устройства ввода-вывода с помощью двух встроенных предикатов
- readdevice (СимвИмяФайла) (symbol) : (i) (o)
Определяет или считывает символьное имя файла для устройства ввода.
(i) – связывает текущее устройство чтения с открытым файлом. Под СимвИменемФайла понимается символьное имя клавиатуоы либо симвоьное имя файла, открытого для чтения или модификации.
(o) – связывеат символьное имя файла с именем текущего устройства чтения, которое может быть клавиатурой или файла.
readdevice (X) X=клавиатура
- writedevice (СимвИмяФайла) (symbol) : (i) (o)
Определяет или считывает символьное имя файла для устройства вывода.
(i) – переназначает текущее устройство записи на открытый файл с именем СимвИмяФайла, который может быть одним из заранее определенных символьных имен (screen или printer) или имеет символьное имя, задаваемое пользоваетелем для файла, открытого для записи или модификации.
(o) – связывает параметр СимвИмяФайла с именем текущего устрйоства записи, которое может иметь имя screen, printer или символьное имя файла.
При использовании в программе файлов ее необходимо снабдить описанием файлового домена, которое выглядит так:
file=datafile, где file - стандартный тип домена (файловый), datafile - логическое имя файла.
В файловом описании можно указывать несколько логических имен, но само описание должно быть единственным, например,
file=datafile1;datafile2;datafile3.