- •Кафедра «Системного анализа и управления в медицинских системах»
- •Срок защиты курсовой работы
- •Замечания руководителя Содержание
- •3. Слабые стороны систем продукций………………………..……………8
- •5.11 Листинг программы……..………………………………………….25
- •Введение
- •Продукционная модель представления знаний
- •Примеры
- •Слабые стороны систем продукций
- •Модификации продукционной модели
- •Разработка программы
- •5.1 Алгоритм решения
- •5.2 Продукционные правила
- •5.3 Логическая схема
- •5.4 Выбор среды программирования
- •5.5 Системные требования
- •5.6 Структура программы
- •5.7 Использованные компоненты Delphi
- •5.8 Инструкция пользователя
- •5.9 Блок – схема
- •5.10 Пример выполнения программы
- •5.11 Листинг программы
- •Заключение
- •Список литературы
5.8 Инструкция пользователя
Выполняемый файл программы РМ.EXE может размещаться в отдельном каталоге с программами аналогичного назначения.
Порядок запуска программы.
Кнопка "Пуск" - "Выполнить" - "Обзор", найти файл с именем РМ и установить на него указатель, - "Ввести" - "ОК".
После этого на экран выводится главное окно программы (рис. 1).
Рисунок 1 - окно программы
В верхней части окна расположена инструментальная панель с кнопками управления. Кнопка Диагностика предназначена для обработки результатов опроса пациента. Кнопка Схема лечения выводит схему лечения диагностируемого заболевания. Кнопка О программе выводит окно с краткой информацией (рис 2). Для завершения работы служит кнопка Выход.
Остальную часть экрана занимает область опроса пациента. Рядом с каждым симптомом расположено окошко, щелчком мышью на котором ставится галочка в случае положительного ответа, или убирается – в случае отрицательного.
Рисунок 2 - информация о программе
5.9 Блок – схема
5.10 Пример выполнения программы
5.11 Листинг программы
unit main;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ToolWin, ActnMan, ActnCtrls, XPStyleActnCtrls, ActnList,
StdCtrls, ExtCtrls, ImgList, XPMan, ComCtrls;
type
TForm1 = class(TForm)
ImageList1: TImageList;
ToolBar1: TToolBar;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
XPManifest1: TXPManifest;
GroupBox1: TGroupBox;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
CheckBox4: TCheckBox;
CheckBox5: TCheckBox;
CheckBox6: TCheckBox;
CheckBox7: TCheckBox;
CheckBox8: TCheckBox;
CheckBox9: TCheckBox;
CheckBox10: TCheckBox;
CheckBox11: TCheckBox;
CheckBox12: TCheckBox;
Image1: TImage;
Panel1: TPanel;
GroupBox2: TGroupBox;
Memo2: TMemo;
Memo1: TMemo;
procedure QuitExecute(Sender: TObject);
procedure diagnosticaExecute(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure TreatmentExecute(Sender: TObject);
procedure aboutExecute(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses about;
{$R *.dfm}
var
shema: integer;
procedure TForm1.QuitExecute(Sender: TObject);
// выход из программы
begin
Close;
end;
procedure TForm1.diagnosticaExecute(Sender: TObject);
// диагностика
const
d: array [0..2] of string = (
'ТРЕБУЕТСЯ ДОПОЛНИТЕЛЬНАЯ ДИАГНОСТИКА',
'ВОСПАЛЕНИЕ СРЕДНЕГО УХА ОСТРОЕ',
'ВОСПАЛЕНИЕ СРЕДНЕГО УХА ХРОНИЧЕСКОЕ ГНОЙНОЕ');
et: array [1..2] of string = (
'111101101000',
'111111010111');
var
s: string;
begin
s := IntToStr(Ord(CheckBox1.Checked));
s := s + IntToStr(Ord(CheckBox2.Checked));
s := s + IntToStr(Ord(CheckBox3.Checked));
s := s + IntToStr(Ord(CheckBox4.Checked));
s := s + IntToStr(Ord(CheckBox5.Checked));
s := s + IntToStr(Ord(CheckBox6.Checked));
s := s + IntToStr(Ord(CheckBox7.Checked));
s := s + IntToStr(Ord(CheckBox8.Checked));
s := s + IntToStr(Ord(CheckBox9.Checked));
s := s + IntToStr(Ord(CheckBox10.Checked));
s := s + IntToStr(Ord(CheckBox11.Checked));
s := s + IntToStr(Ord(CheckBox12.Checked));
shema := 0;
if s = et[1] then
shema := 1;
if s = et[2] then
shema := 2;
Panel1.Caption := d[shema];
end;
procedure TForm1.FormCreate(Sender: TObject);
// инициализация формы
begin
shema := 0;
end;
procedure TForm1.TreatmentExecute(Sender: TObject);
// вывод схемы лечения
begin
Memo1.Visible := False;
Memo2.Visible := False;
if shema = 0 then
Exit;
if shema = 1 then
Memo1.Visible := True;
if shema = 2 then
Memo2.Visible := True;
end;
procedure TForm1.aboutExecute(Sender: TObject);
// информация о программе
begin
Form3.ShowModal;
end;
end.