function GetPVersion: string;– получение версии языка.
Обработка ошибок
procedure ErrMsg(s: PChar);– сообщение об ошибке;
function ErrPMsg: string;– сообщение об ошибке;
procedure ErrRaise(s: string);– защищенный блок;
procedure ErrReadBuf(var i: LongInt; s: PChar);– чтение буфера ошибки.
Контрольный пример
Ниже приведён текст модуля, производящего запросы к базе данных.
unit lab6Unit;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Amzi, StdCtrls, Buttons;
type
TForm1 = class(TForm)
LSEngine: TLSEngine;
OutPut: TListBox;
GroupBox1: TGroupBox;
BitBtn1: TBitBtn;
Label1: TLabel;
Label2: TLabel;
ComboBox1: TComboBox;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
t: TTerm;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
begin
try
LSEngine.InitLS('lab6');
LSEngine.LoadXPL('lab6');
LSEngine.Main;
except
showmessage('База не загружена');
end;
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
try
LSEngine.CloseLS;
except
showmessage('База не закрыта');
end;
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
var
tf:boolean;
begin
Output.items.Clear;
tf:= LSEngine.CallPStr(t, ComboBox1.Text);
while tf do
begin
if LSEngine.GetArity(t)=1 then Output.items.add(LSEngine.GetPStrArg(t, 1)+' is '+LSEngine.GetFunctor(t))
|
|
else Output.items.add(LSEngine.GetPStrArg(t, 1)+' is '+LSEngine.GetFunctor(t)+' of '+LSEngine.GetPStrArg(t, 2));
tf:= LSEngine.Redo;
end;
end;
end.
Задание к работе
1. Составить программу, которая отображает все данные лабораторной работы № 1 на форме DELPHI приложения.
2. Подобрать тестовые данные, проверяющие работу программы.
3. Провести анализ ошибок и полученных результатов, составить отчет о проделанной работе.
Содержание отчета
1. Исходные тексты программ на языке Пролог и Object Pascal (Delphi).
2. Наборы тестовых данных и результаты работы программ.
3. Перечень и анализ ошибок.
4. Выводы по работе.
МЕТОДИЧЕСКОЕ ОБЕСПЕЧЕНИЕ
САМОСТОЯТЕЛЬНОЙ РАБОТЫ СТУДЕНТОВ
СОДЕРЖАНИЕ
Тема 1: Основные понятия логики. Правильная постановка целей
Тема 2: Элементы формальной логики для управления техническими устройствами
Тема 3: Программирование на языке Prolog. Синтаксис и Рекурсия на Prolog
Тема 4: Построение семантической сети на основе фрагмента текста
Тема 5: Создание фрейма - визуального образа
Тема 6: Создание не визуального фрейма