Автор работы: Пользователь скрыл имя, 07 Апреля 2011 в 17:06, курсовая работа
Массив - это структура данных, которая может заключать в себе несколько отдельных значений данных, подобно тому, как здание - это физическая структура, которая может содержать несколько этажей.
Введение
1 Разработка эскизного и технического проектов программы
Назначение и область применения
1.2 Техническая характеристика
1.2.1 Постановка задачи
1.2.2 Описание алгоритма
1.2.3 Организация входных и выходных данных
1.2.4 Выбор среды разработки программных средств
2. Методы сортировки массивов
2.1 Метод «Пузырька» или Метод Обмена
2.2 Метод прямого выбора
2.3 Метод Шелла
3 Проектирование и разработка проекта
3.1 Проектирование программы
3.2 Текст программы
3.3 Спецификация программы
3.4 Тестирование
3.5 Использование созданного приложени
Заключение
Глоссарий
Список использованных источников
Приложение А
Приложение Б
begin // обменяем k-й и k+1-й элементы
buf := a[k];
a[k]:=a[k+1];
a[k+1]:=buf;
ch:=true;
end;
for i:=1 to size do
label2.Caption:=label2.
label2.Caption:=label2.
until not ch; // если не было обменов, значит
отсортирован
//по убыванию
if (RadioButton1.Checked=true) and (RadioButton5.Checked=true)
repeat
ch:=false; // пусть в текущем цикле нет обменов
for k:=1 to size-1 do
if a[k] < a[k+1]
then
begin // обменяем k-й и k+1-й элементы
buf := a[k];
a[k]:=a[k+1];
a[k+1]:=buf;
ch:=true;
end;
for i:=1 to size do
label2.Caption:=label2.
label2.Caption:=label2.
until not ch; // если не было обменов, значит
отсортирован
// метод прямого выбора
// по возрастанию
if (RadioButton2.Checked=true) and (RadioButton7.Checked=true)
for i:=1 to size-1 do
begin
//поиск минимальн эл-та в части массива от a[1] до a[size]
min:=i;
for j:=i+1 to size do
if a[j] < a[min]
then min:=j;
//меняем местами a[min] и a[i]
buf:=a[i];
a[i]:=a[min];
a[min]:=buf;
for k:=1 to size do
label2.Caption:=label2.
label2.Caption:=label2.
end;
// по убыванию
min:=i;
if (RadioButton2.Checked=true) and (RadioButton6.Checked=true)
for i:=1 to size-1 do
begin
//поиск минимальн эл-та в части массива от a[1] до a[size]
min:=i;
for j:=i+1 to size do
if a[j] > a[min]
then min:=j;
//меняем местами a[min] и a[i]
buf:=a[i];
a[i]:=a[min];
a[min]:=buf;
for k:=1 to size do
label2.Caption:=label2.
label2.Caption:=label2.
end;
// МЕТОД ШЕЛЛА
// по возрастанию
if (RadioButton3.Checked=true) and (RadioButton8.Checked=true)
d:=Size div 2; // начальное значение интервала
While d>0 do
begin // цикл с уменьшением интервала до 1
//пузырьковая сортировка с
ch:=true;
While ch do
begin // цикл, пока есть перестановки
ch:=false; i:=1;
for i:=1 to Size-d do
begin
//сравнение эл-тов на
if a[i]>a[i+d]
then
begin
buf:=a[i];
a[i]:=a[i+d];
a[i+d]:=buf; //перестановка
ch:=true; //признак перестановки
end;
end;
end;
d:=d div 2; // уменьшение интервала
for i:=1 to size do
label2.Caption:=label2.
label2.Caption:=label2.
end; //пока d>0
// по убыванию
if (RadioButton3.Checked=true) and (RadioButton9.Checked=true)
d:=Size div 2; // начальное значение интервала
While d>0 do
begin // цикл с уменьшением интервала до 1
//пузырьковая сортировка с
ch:=true;
While ch do
begin // цикл, пока есть перестановки
ch:=false; i:=1;
for i:=1 to Size-d do
begin
//сравнение эл-тов на
if a[i]<a[i+d]
then
begin
buf:=a[i];
a[i]:=a[i+d];
a[i+d]:=buf; //перестановка
ch:=true; //признак перестановки
end;
end;
end;
d:=d div 2; // уменьшение интервала
Label2.Caption:=Label2.
end;
end.
3.3
Спецификация программы
Исполняемый файл программы «Сортировка линейного массива» имеет название Project1.exe и расположен на диске в Приложении А.
Приложение
включает следующие файлы приведенные
в таблице 1.
Таблица 1
Наименование | Обозначение |
Примечание |
Project1.dof | Файл параметров проекта | Содержит текущие установки проекта: настройки компилятора и компоновщика, имена служебных каталогов, условные директивы |
Project1.dpr | Файл проекта | Связывает все файлы из которых состоит приложение |
Unit1.pas | Файл программного модуля для формы № 1 | Определяет функциональность формы №1 |
Unit1.dfm | Файл формы №1 |
Содержит список свойств всех компонентов, включенных в форму №1 |
Unit1.dcu | Объектный файл для Unit1.pas | Откомпилированная версия Unit1.pas |
Project1.cfg | Файл конфигурации проекта | содержит конфигурацию всего проекта |
Unit1.ddp | Файлы модуля | Содержит вспомогательные файлы модуля, формируется автоматически |
3.4
Тестирование
При разработке программы «Сортировка линейного массива» в качестве контрольного примера может быть использован следующий пример:
5 8 -4 0 7 3 9
Отладка
программы производилось с
Результаты выполнения программы в ходе
тестирования отображены в Приложении
Б.
Минимальные требования для полноценной работы созданного приложения:
Для
запуска приложения использовать файл
Project1.exe.
При выполнении данного курсового проекта мною были приобретены навыки работы в среде разработки приложений Delphi 7.0, сформированы знания по формированию и обработке массивов. Результатом моих знаний и умений служит разработанное приложение «Сортировка линейных массивов», которая может быть использована преподавателем на уроках при объяснении темы «Методы Сортировки линейных массивов».
Данное приложение было протестировано. Выявленные недостатки в ходе работы программы были устранены.
Результаты тестирования проекта имеются в Приложении Б.
При попытке сортировать массив с пропущенными ячейками в таблице программа выдает для пользователя соответствующее сообщение и автоматически заменяет пропущенные значения нулями.
Перспектива данной работы заключается в увеличении количества методов сортировки в данном проекте для более широкого использования в педагогической практике.
№ п/п | Понятие | Определение |
1 | Delphi | одна из самых мощных систем, позволяющих на самом современном уровне создавать как отдельные прикладные программы Windows, так и разветвленные комплексы предназначенные для работы в корпоративных сетях и в Интернет. |
2 | Object Pascal | язык программирования
высокого уровня, позволяющий использовать
такие объектно- |
3 | Алгоритм | это описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов. |
4 | Визуальные компоненты | компоненты, видимые при работе приложения |
5 | Компилятор | программа, которая
переводит исходный код на машинный
язык и создает выполняемую |
6 | Компиляция программы | перевод исходного кода на машинный язык и компоновку выполняемого файла из файлов, составляющих проект. |
7 | Массив | это однородная структура однотипных данных, одновременно хранящихся в последовательных ячейках оперативной памяти. Эта структура должна иметь имя и определять заданное количество данных (элементов). |
8 | Проект | совокупность файлов разных форматов, из которых строится программа. |
9 | Сортировка массива | процесс перестановки значений данного массива в определенном порядке. |
10 | Форма | окно приложения на этапе разработки |