на первый
заказ
Курсовая работа на тему: Обзор предприятия и постановка задач. Обзор предприятия. Постановка задачи
Купить за 350 руб.Введение
Объектом исследования в данной курсовой работе являются алгоритмы сортировки данных и алгоритмы поиска данных.Предметом исследования в данной курсовой работе являются способы и методы реализации алгоритмов сортировки и алгоритмов поиска на языках программирования высокого уровня, в частности на языке Delphi.
В рамках выполнения курсовой работе необходимо решить следующие основные задачи:
. Выполнить исследование рассматриваемой организации и точки зрения структуры и используемых технологий.
. Подробно рассмотреть основные алгоритмы сортировки данных с подробным их описанием и примерами использования.
. Подробно рассмотреть основные алгоритмы поиска данных с подробным их описанием и примерами использования.
. Запрограммировать рассмотренные алгоритмы сортировки и поиска в рамках создаваемого программного средства.
. Разработать детальное руководство пользователя для обучения работе с программой.
Необходимо заметить, что вопросами исследования алгоритмов, их классификацией, анализом и способами их программирования в разное время занимались: Левитин А., Гудман С., Хидетниеми С., Ахо А., Хлопкрофт Дж., Ульман Дж., Цейтлин Г.Е., Кнут Д., Вирт Н., Лорин Г., Макконнелл Дж.
Цель данной курсовой работы - исследование алгоритмов поиска и сортировки данных, приобретение навыков в программировании данных алгоритмов и в конечном итоге - написание программного средства, которое должно реализовывать функции сортировки больших объемов данных и поиска данных.
Оглавление
- Введение- Обзор предприятия и постановка задач
- Обзор предприятия
- Постановка задачи
- Основные сведения про используемые алгоритмы сортировки и поиска
- Разработка программного средства и руководство пользователя
- Описание процесса создания программного средства
- Руководство пользователя Заключение
- Список использованной литературы
- Приложения
Заключение
В первой главе курсовой работы было произведено исследование предприятия и поставлено задание на разработку программы.В качестве рассматриваемого предприятия было выбрано открытое акционерное общество "Комитекс".
Были рассмотрены следующие моменты:
. История развития предприятия и основные этапы его развития.
. Укрупненная структура предприятия (представительства).
. Членство предприятия в различных ассоциациях.
. Краской обзор используемых на предприятии технологий.
После этого была выявлена потребность предприятия в написании программы, предназначенной для обработки больших массивов текстовой информации, а именно для сортировки и поиска.
Во второй главе были изучены основные моменты, которые необходимы для решения данной задачи, а именно были рассмотрены части используемые алгоритмы сортировки данных и поиска.
Среди алгоритмов сортировки были рассмотрены:
сортировка выбором;
пузырьковая сортировка;
сортировка вставкой;
сортировка подсчетом;
сортировка Шелла.
Список литературы
1. Левитин Ананий. Алгоритмы: введение в разработку и анализ. :Пер. с англ. - М.: Издательский дом "Вильямс", 2006. - 576с. : ил.. Гудман С., Хидетниеми С. Введение в разработку и анализ алгоритмов. - М.: Мир, 1981.
. Ахо А., Хлопкрофт Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. - М.: Мир. 1974.
. Ахо А.В., Хопкрофт Д.Э., Ульман Д.Д. Структуры данных и алгоритмы. -М.: Вильяме, 2000. 384с.
. Цейтлин Г.Е. Введение в алгоритмику. Киев: Сфера, 1998. 473с.
. Кнут Д. Искусство программирования для ЭВМ. Т. 1. Основные алгоритмы. - М.: Мир, 1976.
. Кнут Д. Искусство программирования для ЭВМ. Т. 3. Сортировка и поиск. - М.: Мир, 1978.
. Вирт Н. Алгоритмы и структуры данных. М.: Мир, 1989. - 360с.
. Лорин Г. Сортировка и системы сортировки. М.: Наука, 1983. - 384с.
. Цейтлин Г.Е. Алгоритмы адаптивной сортировки и их классификация. // Проблемы управления и информатики 1995, № 3. С. 95-103.
. Макконнелл Дж. Анализ алгоритмов. Вводный курс. М.: Техносфера, 2002.-304с.
. Архангельский А. Я. Object Pascal в Delphi. - М: ЗАО ≪Издательство БИНОМ, 2002.
. Павловская Т.А. Паскаль. Программирование на языке высокого уровня: Учебник для вузов. - СПб.: Питер, 2007. - 393с.
. М.В. Сухарев Основы Delphi. Профессиональный подход. - СПб.: Наука и Техника, 2004. 600с.
. Н.Б. Культин Программирование в Turbo Pascal 7.0 и Delphi - СПб.: BHV - Санкт-Петербург 1998 - 240с.
. Грызлов В.И., Грызлова Т.П. Турбо Паскаль 7.0 - М.: ДМК, 1998 - 400с.
. Ж.Джонс, К.Жарроу Решение задач в системе TurboPascal. - М., Финансы и статистика 1991 - 714с.
. Delphi 5. Руководство программиста. - М.: "Нолидж", 2001. - 880с
. Архангельский А. Я. Delphi 7. Справочное пособие,- М: ЗАО ≪Издательство БИНОМ, 2003.
. Культин Н. Б. Delphi 6 Программирование на Object Pascal - СПб : БХВ-Петербург 2001 - 528с : ил.
. Архангельский А. Я. Приемы программирования в Delph. Версии 5-7. - М: ЗАО ≪Издательство БИНОМ≫, 2003.
. Фленов М. Е. Библия Delphi. - СПб.: БХВ-Петербург, 2004. - 880с.:
. Гринзоу Лу. Философия программирования для Windows 95/NТ. пер.с англ. - СПб.: Символ-плюс, 1997. - 640с.
Тейксейра С, Пачеко К Borland Delphi 6. Руководство разработчика. : Пер. с англ. - М. : Издательский дом "Вильямс", 2002. - 1120с.
Приложение 1
Текст программы
{ Public declarations };: TMainForm;: array [0..1000] оf String;: integer;: TLargeInteger;, Т2: TLargeInteger;
{$R *.dfm}TMainForm.Button1Click(Sender: TObject);, i : integer;Memo1.Text <> '' theni := 1 tо Memo1.Lines.Count dо[i] := Memo1.Lines[i-1];:= Memo1.Lines.Count;.Enabled := true;.Enabled := true;.Enabled := true;.Enabled := true;.Enabled := true;.Enabled := true;.Enabled := true;.Enabled := true;_Shablon.Enabled := true;.Enabled := true;('Не введен список!', mtWarning, [mbOK], 0);;TMainForm.Button2Click(Sender: TObject);, j, min : integer;: String;(iCounterPerSec);(Т1);i := 1 tо kol-1 dо:= i;j := i+1 tо kol domas[j] < mas[min] then:= j;:= mas[min];[min] := mas[i];[i] := temp;;(Т2);CheckBox1.Checked = true then('Время сортировки ' + FormatFloat('0.00000000000', (Т2 - Т1) / iCounterPerSec) + ' сек.', mtInformation, [mbOK], 0);.Lines.Clear;i := 1 tо kol dо.Lines.Add(mas[i]);;TMainForm.Button3Click(Sender: TObject);, j, min : integer;: String;(iCounterPerSec);(Т1);i := 1 tо kol-1 doj := 1 tо kol-i domas[j+1] < mas[j] then:= mas[j];[j] := mas[j+1];[j+1] := temp;;(Т2);CheckBox1.Checked = true then('Время сортировки ' + FormatFloat('0.00000000000', (Т2 - Т1) / iCounterPerSec) + ' сек.', mtInformation, [mbOK], 0);.Lines.Clear;i := 1 tо kol dо.Lines.Add(mas[i]);;TMainForm.Button4Click(Sender: TObject);, j, min : integer;: String;(iCounterPerSec);(Т1);i:=1 tо kol dо:= mas[i];:= i-1;(j >= 0) and (mas[j] > temp) dо[j+1] := mas[j];:= j-1;[j+1] := temp;;(Т2);CheckBox1.Checked = true then('Время сортировки ' + FormatFloat('0.00000000000', (Т2 - Т1) / iCounterPerSec) + ' сек.', mtInformation, [mbOK], 0);.Lines.Clear;i := 1 tо kol dо.Lines.Add(mas[i]);;TMainForm.Button5Click(Sender: TObject);, j, min : integer;: array [0..10000] оf String;: array [0..10000] оf integer;(iCounterPerSec);(Т1);i := 1 tо kol dо[i] := 0;i := 1 tо kol-1 doj := i+1 tо kol domas[i] < mas[j] then(count[j])(count[i]);;i := 1 tо kol dо[count[i]] := mas[i];(Т2);CheckBox1.Checked = true then('Время сортировки ' + FormatFloat('0.00000000000', (Т2 - Т1) / iCounterPerSec) + ' сек.', mtInformation, [mbOK], 0);.Lines.Clear;i := 1 tо kol dо[i] := temp[i-1];.Lines.Add(mas[i]);;;TMainForm.Button6Click(Sender: TObject);,i,j: integer;: word;: String;(iCounterPerSec);(Т1);:= kol div 2;d > 0 doi := 0 tо kol-d dо:= i;(j >= 0) and (mas[j] > mas[j+d]) dо:= mas[j];[j]:= mas[j+d];[j+d] := temp;:=j-d;;;:= d div 2;;(Т2);CheckBox1.Checked = true then('Время сортировки ' + FormatFloat('0.00000000000', (Т2 - Т1) / iCounterPerSec) + ' сек.', mtInformation, [mbOK], 0);.Lines.Clear;i := 1 tо kol dо.Lines.Add(mas[i]);;TMainForm.Button7Click(Sender: TObject);: String;, line : integer;: array [0..10000] оf String;Memo1.Text <> '' theni := 1 tо Memo1.Lines.Count dо[i] := Memo1.Lines[i-1];:= Memo1.Lines.Count;('Не введен список!', mtWarning, [mbOK], 0);LE_Shablon.Text = '' then('Не задан шаблон поиска', mtWarning, [mbOK], 0):= LE_Shablon.Text;i := 1 tо kol dotemp[i] = str then;i <= kol then.SelStart := Memo1.Perform(EM_LINEINDEX, i-1, 0);.SelLength := Length(Memo1.Lines[i-1]);.SetFocus;('Шаблон поиска не найден!', mtWarning, [mbOK], 0);;;TMainForm.Button9Click(Sender: TObject);, high, mid, i: integer;, flag:boolean;: String;
//проверка на отсортированность.
for i := 1 tо kol-1 domas[i] > mas[i+1] then:= false;;;;flag thenLE_Shablon.Text = '' then('Не задан шаблон поиска', mtWarning, [mbOK], 0):= LE_Shablon.Text;:= 1;:= kol;:= false;(low <= high) and (not found) dо:= (low+high) div 2;str < mas[mid] then:= mid-1if str > mas[mid] then:= mid+1:=true;;found then.SelStart := Memo2.Perform(EM_LINEINDEX, mid-1, 0);.SelLength := Length(Memo2.Lines[mid-1]);.SetFocus;('Шаблон поиска не найден!', mtWarning, [mbOK], 0);
end;('Данные не отсортированы! Поиск невозможен!', mtWarning, [mbOK], 0);
end;TMainForm.Button8Click(Sender: TObject);: String;, j, к, m, n, nom : integer;: array [0..10000] оf String;: boolean;:= false;Memo1.Text <> '' theni := 1 tо Memo1.Lines.Count dо[i] := Memo1.Lines[i-1];:= Memo1.Lines.Count;('Не введен список!', mtWarning, [mbOK], 0);LE_Shablon.Text = '' then('Не задан шаблон поиска', mtWarning, [mbOK], 0):= LE_Shablon.Text;:= Length(str);
к := 1 tо kol dо:= Length(temp[к]);i := 1 tо n-m+1 dо:= 0;(j < m) and (str[j+1] = temp[к, i+j]) dо(j);j = m then:= true;;;;flag then;;flag then.SelStart := Memo1.Perform(EM_LINEINDEX, к-1, 0) + i-1;.SelLength := m;.SetFocus;('Шаблон поиска не найден!', mtWarning, [mbOK], 0);;
или зарегистрироваться
в сервисе
удобным
способом
вы получите ссылку
на скачивание
к нам за прошлый год