Главная страница

фывфв. Руководство пользователя Контрольный пример


Скачать 7.68 Mb.
НазваниеРуководство пользователя Контрольный пример
Анкорфывфв
Дата28.03.2023
Размер7.68 Mb.
Формат файлаrtf
Имя файлаbibliofond.ru_702490.rtf
ТипРуководство пользователя
#1021509
страница9 из 9
1   2   3   4   5   6   7   8   9



Заключение



В результате выполнения курсовой работы по дисциплине "Технология программирования" мной была разработана программа реализующая пять действий над нечеткими множествами: пересечение, разность, объединение, симметричная разность и произведение.

Программа позволяет выполнять следующие действия:

§ вводить различные исходные данные;

§ выводить на экран результаты;

§ возможность производить обработку различных наборов данных в течение одного сеанса работы.

Наличие развитого пользовательского интерфейса позволяет работать с созданной программой практически любому пользователю, имеющем начальные знания и навыки работы на компьютере: необходимой действие выбирается щелчком мыши на соответствующей кнопке.

Работа над курсовой работой позволила освоить технологию модульного программирования и приобрести навыки работы со средой визуального программирования Delphi и ее библиотечной системой.

Кроме того в работе был изучен теоретический вопрос по этапам разработки программных средств.



Список использованных источников



1. Брауде Э.Д. Технология разработки программного обеспечения. - М.: Бином, 2004. - 455 с.

2. Брукс Ф.П. Как проектируются и создаются программные комплексы. - М.: Наука, 1979. - 376 с.

. Вирт Н. Алгоритмы и структуры данных. - М.: Мир, 1989. - 360 с.

. Глушаков С.В. Программирование на Delphi. - Харьков: Фолио, 2002.518 с.

. Дал У., Дейкстра Э., Хоор К. Структурное программирование. - М.: Мир, 1975. - 472 с.

. Жоголев Е.А. Введение в технологию программирования (конспект лекций). - М.: "ДИАЛОГ-МГУ", 1994. - 286 с.

. Кнут Д.Е. Искусство программирования. т.3. - М.: Мир, 1984. - 724 с.

. Кофман А. Введение в теорию нечетких множеств. - М.: Радио и связь, 1982. - 432 с.

. Липаев В.В. Качество программного обеспечения. - М.: Финансы и статистика, 1983. - 366 с.



Приложение. Листинг программы



Модуль main

unit main;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, ImgList, ComCtrls, StdCtrls, ToolWin;= class (TForm): TToolBar;: TMemo;: TToolButton;: TToolButton;: TToolButton;: TToolButton;: TToolButton;: TToolButton;: TToolButton;: TToolButton;: TImageList;: TToolButton;: TToolButton;PrgEnd (Sender: TObject);FormCreate (Sender: TObject);InputMNO (Sender: TObject);OperationNM (Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm1;op_mno, vvod;

{$R *. dfm}, a2, a3: mno_mas;,n1,n2: integer;vyvod (a: mno_mas; n: integer): string;

// вывод множества: integer;: string;: = '';i: =1 to n do: = s + FloatToStrF (a [i], ffFixed, 4,2) + '; ';: = s;;TForm1. PrgEnd (Sender: TObject);

// выход из программы;;TForm1. FormCreate (Sender: TObject);

// создание формы и инициализация множеств: integer;;: = Random (10) + 5;: = Random (10) + 5;i: = 1 to n1 do[i]: = Random (11) / 10;i: = 1 to n2 do[i]: = Random (11) / 10;;TForm1. InputMNO (Sender: TObject);

// ввод нечетких множеств: integer;Sender = ToolButton1 then. SpinEdit1. Value: = n1;. StringGrid1. ColCount: = n1;. Caption: = 'Ввод множества А';i: = 1 to n1 do. StringGrid1. Cells [i - 1, 0]: = FloatToStrF (a1 [i], ffFixed, 3, 1);. ShowModal;: = Form2. SpinEdit1. Value;i: = 1 to n1 do[i]: = StrToFloat (Form2. StringGrid1. Cells [i - 1, 0]);;Sender = ToolButton2 then. SpinEdit1. Value: = n2;. StringGrid1. ColCount: = n2;. Caption: = 'Ввод множества B';i: = 1 to n2 do. StringGrid1. Cells [i - 1, 0]: = FloatToStrF (a2 [i], ffFixed, 3, 1);. ShowModal;: = Form2. SpinEdit1. Value;i: = 1 to n2 do[i]: = StrToFloat (Form2. StringGrid1. Cells [i - 1, 0]);;;TForm1. OperationNM (Sender: TObject);

// операции над множествами. Clear;Sender = addmno then. Lines. Add ('Операция: ' + addmno. Hint);(a1,n1,a2,n2,a3,n3);;Sender = peresmno then. Lines. Add ('Операция: ' + peresmno. Hint);(a1,n1,a2,n2,a3,n3);;Sender = submno then. Lines. Add ('Операция: ' + submno. Hint);(a1,n1,a2,n2,a3,n3);;Sender = ssubmno then. Lines. Add ('Операция: ' + ssubmno. Hint);(a1,n1,a2,n2,a3,n3);;Sender = mulmno then. Lines. Add ('Операция: ' + mulmno. Hint);(a1,n1,a2,n2,a3,n3);;. Lines. Add ('Множество А');. Lines. Add (vyvod (a1,n1));. Lines. Add ('Множество В');. Lines. Add (vyvod (a2,n2));. Lines. Add ('Результат');. Lines. Add (vyvod (a3,n3));;.

Модуль op_mno

unit op_mno;_mas = array [1.20] of real;_mas = array [1.20] of 0.1;peres (a1: mno_mas; n1: integer; a2: mno_mas; n2: integer;a3: mno_mas; var n3: integer);objed (a1: mno_mas; n1: integer; a2: mno_mas; n2: integer;a3: mno_mas; var n3: integer);razn (a1: mno_mas; n1: integer; a2: mno_mas; n2: integer;a3: mno_mas; var n3: integer);simrazn (a1: mno_mas; n1: integer; a2: mno_mas; n2: integer;a3: mno_mas; var n3: integer);proizved (a1: mno_mas; n1: integer; a2: mno_mas; n2: integer;a3: mno_mas; var n3: integer);math;mu (a: mno_mas; n: integer; var b: bin_mas);

{характеристическая функция}: integer;i: =1 to n doa [i] <0.5 then[i]: = 0[i]: = 1;;peres (a1: mno_mas; n1: integer; a2: mno_mas; n2: integer;a3: mno_mas; var n3: integer);

{пересечение множеств}: integer;: =n1;n2

{объединение множеств}: integer;: =n1;n2

{разность множеств}: integer;: =n1;n2

{симметричная разность множеств}: integer;, aa2: bin_mas;(a1, n1, aa1);(a2, n2, aa2);: =n1;i: =1 to n3 do[i]: =0;i: =1 to n3 do(aa1 [i] =1) and (aa2 [i] =1) then[i]: =a1 [i];;proizved (a1: mno_mas; n1: integer; a2: mno_mas; n2: integer;a3: mno_mas; var n3: integer);

{произведение множеств}: integer;: =n1;n2

Модуль vvod

unit vvod;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, Spin, Buttons, Grids;= class (TForm): TStringGrid;: TBitBtn;: TLabel;: TSpinEdit;SpinEdit1Change (Sender: TObject);;: TForm2;

{$R *. dfm}TForm2. SpinEdit1Change (Sender: TObject);

// изменение размерности множества. ColCount: = SpinEdit1. Value;;.
1   2   3   4   5   6   7   8   9


написать администратору сайта