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

Сазонова_20ВИ1. Сравнение и анализ алгоритмов сортировки массива прямым выбором


Скачать 0.88 Mb.
НазваниеСравнение и анализ алгоритмов сортировки массива прямым выбором
Дата10.12.2021
Размер0.88 Mb.
Формат файлаdoc
Имя файлаСазонова_20ВИ1.doc
ТипПояснительная записка
#298849
страница5 из 7
1   2   3   4   5   6   7

Структура программного обеспечения


В результате выполнения задания на курсовую работу была разработана диаграмма классов, представленная на рисунке 6.



Рисунок 6 – Диаграмма классов

При создании диаграммы было выделено 9 классов: TForm, TTabsheet, TPageControl, TButton, TStringGrid, TRadioButton, TLabel, TEdit, TChart.

Основным классом является TForm. К его агрегированным классам относятся TPageControl, TTabsheet. Последний в свою очередь является агрегирующим по отношению к TButton, TStringGrid, TRadioButton, TLabel, TEdit, TChart. Это связано с тем, что компоненты данных классов расположены на Tabsheet.

Все классы связаны между собой с помощью агрегации – ассоциация типа «целое - часть». Она представляется в виде прямой с ромбом на конце. Ромб на связи указывает на то, какой класс является агрегирующим, то есть «состоящим из частей», а класс с противоположного конца – агрегированным, то есть является той самой составляющей частью.

Каждый класс имеет свои атрибуты, которые описывают свойства его объектов:

  • TForm – это класс с важнейшим компонентом, на котором основана вся работа системы по проектированию и разработке приложений. Содержит в себе такие атрибуты, как объявление массивов с разной степенью упорядоченности: неупорядоченный, упорядоченный и упорядоченный в обратном порядке. Также обладает атрибутами: caption, который устанавливает название формы; description, задающий текст подсказки для компонента, отображаемой при наведении курсора мыши или клике в области компонента; width, устанавливающий ширину компонента.

  • TPageControl – класс, позволяющий в ходе проектирования объединять на одной форме несколько вкладок, которые содержат разные элементы управления. Доступ к каждой из вкладок осуществляется при помощи корешков с названиями. В нем используются атрибуты, дающие наименование компоненту (Name) и созданным страница (Caption), то есть тем самым «корешкам».

  • TTabsheet – класс, используемый для большего удобства при распределение компонентов на разные страницы, которые созданы при помощи TPageControl. Обладает такими атрибутами, как caption – заголовки вкладок, раннее описанный description.

  • TChart – класс, позволяющий строить различные диаграммы и графики. Обладает атрибутами: series – содержит серии графика, ChartArea — область на листе, отведенная под диаграмму. 

  • TEdit – класс, компоненты которого предназначены для введения данных пользователем. В данном случае он вводит число, обозначающее максимальную размерность массива. Атрибутами являются text – надпись, отображаемая на компоненте, и name – название компонента.

  • TLabel – класс, предназначенный для отображения подписей, меток и статического текста на форме. Обладает теми же атрибутами, что и предыдущий класс.

  • TRadioButton - класс предназначен для выбора одного переключателя из ряда возможных. Переключатели всегда используются группами. Когда пользователь выбирает один из них, то выделение с текущего переключателя снимается. Таким образом, в группе выделен всегда только один переключатель. В данном случае этот класс отвечает за выбор степени упорядоченности массива. Атрибуты, которыми обладает: name – название компонента; caption – наименование кнопки; contextHelpText - текст контекстной подсказки для компонента.

  • TButton - класс, компоненты которого выполняют определенное действие после нажатия на него. Является кнопкой. Обладает теми же атрибутами, что и предыдущий класс, но к ним добавляется еще action - имя действия, соответствующего данной кнопке.

  • TStringGrid – класс, позволяющий отображать данные в табличном виде. Обладает такими атрибутами, как row и column – строки и столбцы соответственно, составляющие таблицу.
  1. Реализация программы

    1. Кодирование


В ходе выполнения курсовой работы было разработано приложение «Сравнение и анализ алгоритмов сортировки массива прямым выбором», код которого приведен в приложении А.
    1. Диаграмма деятельности


С помощью программного обеспечения ArgoUML была разработана диаграмма деятельности для алгоритма сортировки массива классическим прямым выбором, которая представлена на рисунке 7.



Рисунок 7 – Диаграмма деятельности алгоритма сортировки массива классическим прямым выбором

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

  • razm:=strtoint(Edit1.Text); - присваивание переменной введенного пользователем значение, обозначающее размерность массива;

  • t1:=GetTickCount; - начало засечки времени;

  • for i:=0 to razm – вход в цикл, упорядочивающий элементы массива;

  • min:=i; - присваивание индекса первого ненулевого элемента, с которым будут сравниваться последующие элементы массива;

  • for j := i+1 to razm – вход в цикл, который ищет минимум;

  • min:=j; - присваивание индекса минимума. Осуществляется только тогда, когда удовлетворено условие M[min]>M[j];

  • buf:=M[i]; - присваивание буферной переменной значение первого неупорядоченного элемента;

  • M[i]:=M[min]; - присваивание первому неупорядоченному элементу значение элемента с индексом min;

  • M[min]:=buf; - элементу с индексом min присваивается значение, ранее занесенное в буферную переменную;

  • t2:=GetTickCount; - конец засечки времени;

  • time1[q]:=t2-t1; - вычисление времени, за которое массив был отсортирован, и его добавление в массив с временными показателями.
  1. 1   2   3   4   5   6   7


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