Upper_lower (Upper, Lower).(i,i),(i,o),(o,i).
Все эти предикаты осуществляют преобразование в прямом и обратном направлении (например, str_char: String Char, или Char String) или проверяется соответствие аргументов друг другу (в случае соответствия - Yes, в противном случае -No).
Пример 5.4 демонстрирует использование предикатов преобразования типов.
/* Пример 5.4.*/ Predicates do_conversions /*выполнить преобразования*/ Goal Do_conversions. Clauses do_conversions:- write («ПРЕОБРАЗОВАНИЯ ТИПОВ:»),nl,nl, char_int (‘W’,N1), write («», ‘W’, «-->», N1), nl, write («Для продолжения нажимайте любую клавишу!»), Readchar (_), str_char («B»,N2), write («\10\10\32\32», «B», «-->», N2, ‘\10’), Readchar (_), str_int («\53», N3), write («\32\32\32\32», «Код ASCII=53», «-->», N3), Readchar (_), Str_real (N4,33), write («\10\32\32\32\32», «33», «-->»,N4,), Readchar (_), upper_lower («PROLOG», N5), write («PROLOG», «-->»,N5).
Инструменты: компьютер IBM PC с любой операционной системой, в которой реализован язык PDC Prolog.
Вопросы для защиты лабораторной работы: 1. Как представляется строка символов с помощью кодов ASCII? 2. Какой предикат используется для конкатенации строк? 3. Перечислите предикаты, используемые для преобразования типов.
Литература:
ЛАБОРАТОРНАЯ РАБОТА № 6
По дисциплине: СИСТЕМЫ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА Тема занятия:ХРАНЕНИЕ ФАЙЛОВ НА ВНЕШНИХ НОСИТЕЛЯХ Цель занятия:Ознакомиться с принципами файловой организации данных в языке Prolog. Количество часов: 2 Содержание работы: Разработать программу реализующую различные способы хранения файлов на внешних носителях.
Методические указания по выполнению:
Файловая система языка Prolog включает стандартные предикаты открытия и закрытия файлов, чтения из файла и записи в файл, изменение данных в файле, а также дозаписи в существующий файл. Тем самым обеспечиваются великолепные возможности эффективной обработки файлов.
Обычно клавиатура является устройством чтения (ввода) информации, а текущим устройством записи (вывода) - экран монитора. Однако, можно определить и другие устройства ввода или вывода в процессе выполнения программы. Например, ввод - из файла, а вывод - на устройство печати.
Для всех устройств ввода(вывода) ввод(вывод) производится идентично. Сначала файл должен быть открыт и сделать это можно одним из следующих способов: для чтения, записи, добавления и модификации. Файл, открытый для любого действия, кроме чтения, необходимо закрыть после окончания работы. В противном случае информацию можно потерять. Одновременно могут быть открыты несколько файлов.
Открытие и закрытие файлов при каждом обращении занимает много больше времени, чем обращение к открытым файлам с целью записи или чтения информации из них.
При открытии файла производится связывание символического имени с действительным именем, принятым в MS DOS. Это символическое имя и используется для направления ввода/вывода.
Символическое имя файла (оно называется еще и логическим именем) должно начинаться со строчной (маленькой) латинской буквы и объявляется в описании домена file. Это описание должно быть единственным в программе. Например: file=mybase1 или file=database1;dfile2;dfile3, т.е. во втором случае объявлено три логических имени для отождествления их с реальными файлами DOS. Это описание несколько отличается от обычного, когда слева пишется имя домена, а справа - его тип, например man,woman = symbol.
Ниже описываются стандартные предикаты для открытия и закрытия файлов.
ЗАПИСЬ В ФАЙЛ Открытие файла для записи начинается с его создания. Файл DOSFileName открывается для записи по логическому имени SymbolFileName:
|