Автор работы: Пользователь скрыл имя, 18 Июня 2013 в 15:49, курсовая работа
Целью работы является - создание программы для учета городского транспорта, которая будет хранить введенную информацию в базах данных.
Для достижения поставленной цели необходимо решить ряд задач:
• подробно изучить базу данных программы;
• исследовать средства, которые нам понадобятся для создания программы;
• описать интерфейс полученной программы.
ВВЕДЕНИЕ 5
1 ОБЗОР 7
1.1 Информация, характеризующая городской транспорт 7
1.2 Преимущества ООП для программной реализации базы данных, хранящей информацию о городском транспорте 7
1.3 Постановка задачи 7
2 АЛГОРИТМИЧЕСКОЕ КОНСТРУИРОВАНИЕ 9
2.1 Общая блок-схема работы программы 9
2.2 Алгоритм поиска по заранее заданному критерию 11
3 ПРОГРАММНОЕ КОНСТРУИРОВАНИЕ 12
3.1 Обоснование выбора языка программирования 12
3.2 Описание основных классов 12
4 РЕЗУЛЬТАТЫ РАБОТЫ ПРОГРАММНОГО СРЕДСТВА 15
ЗАКЛЮЧЕНИЕ 26
5 СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 27
ПРИЛОЖЕНИЕ А. ТЕХНИЧЕСКОЕ ЗАДАНИЕ НА ПРОГРАММНОЕ СРЕДСТВО 28
ПРИЛОЖЕНИЕ Б. ЛИСТИНГ ПРОГРАММЫ 32
ПРИЛОЖЕНИЕ В. 59
sort_b:=new Button();
sort_b.Text:='Сортировать';
sort_b.Top:=330;
sort_b.Width:=120;
sort_b.Left:=230;
sort_b.Click+=sort;
self.Controls.Add(sort_b);
lbl_2:= new System.Windows.Forms.Label();
lbl_2.Width:=200;
lbl_2.top:=380;
lbl_2.left:=200;
lbl_2.Text := 'окно вывода';
self.controls.add(lbl_2);
bd2_l:=new ListBox();
bd2_l.top:=400;
bd2_l.Width:=700;
bd2_l.height:=200;
self.Controls.Add(bd2_l);
lbl_3:= new System.Windows.Forms.Label();
lbl_3.Width:=200;
lbl_3.left:=100;
lbl_3.top:=610;
lbl_3.Text := 'максимальное количество мест >=';
self.controls.add(lbl_3);
find_f:= new textbox();
find_f.Top:=610;
find_f.left:=300;
self.Controls.Add(find_f);
find_b:=new Button();
find_b.Text:='Найти';
find_b.Top:=640;
find_b.left:=300;
find_b.Click+=find;
self.Controls.Add(find_b);
deleteFind_b:=new Button();
deleteFind_b.Text:='Удалить найденое';
deleteFind_b.Top:=670;
deleteFind_b.left:=300;
deleteFind_b.Width:=120;
deleteFind_b.Click+=
self.Controls.Add(deleteFind_
MTF_b:=new Button();
MTF_b.Text:='Рентабельность маршрутные такси';
MTF_b.Top:=630;
MTF_b.left:=50;
MTF_b.Width:=200;
MTF_b.Click+=FindMT;
self.Controls.Add(MTF_b);
AutobusF_b:=new Button();
AutobusF_b.Text:='
AutobusF_b.Top:=660;
AutobusF_b.left:=50;
AutobusF_b.Width:=200;
AutobusF_b.Click+=FindAutobus;
self.Controls.Add(AutobusF_b);
TramwayF_b:=new Button();
TramwayF_b.Text:='
TramwayF_b.Top:=690;
TramwayF_b.left:=50;
TramwayF_b.Width:=200;
TramwayF_b.Click+=FindTramway;
self.Controls.Add(TramwayF_b);
showDB();
end;
procedure FindAutobus(sender: Object; e: System.EventArgs);
begin
bd2_l.items.clear();
var h:node := manager.getHead();
while (h<>nil) do
begin
if ( h.data.getTip() = ak) then
bd2_l.items.add(h.data.
h := h.next;
end;
end;
procedure FindMT(sender: Object; e: System.EventArgs);
begin
bd2_l.items.clear();
var h:node := manager.getHead();
while (h<>nil) do
begin
if ( h.data.getTip() = mk) then
bd2_l.items.add(h.data.
h := h.next;
end;
end;
procedure FindTramway(sender: Object; e: System.EventArgs);
begin
bd2_l.items.clear();
var h:node := manager.getHead();
while (h<>nil) do
begin
if ( h.data.getTip() = tk) then
bd2_l.items.add(h.data.
h := h.next;
end;
end;
procedure addMT(sender: Object; e: System.EventArgs);
begin
var temp:MT := new MT(manager.getIndex(),mk,0,0,0
MTForm := new MTInputForm('Введите данные маршрутного такси',temp,mk);
MTForm.showDialog();
manager.addNodeFirst(temp);
manager.writeDB();
showDB();
end;
procedure addAutobus(sender: Object; e: System.EventArgs);
begin
var temp:autobus := new autobus(manager.getIndex(),ak,
AutobusForm := new AutobusInputForm('Введите данные автобуса',temp,ak);
AutobusForm.showDialog();
manager.addNodeFirst(temp);
manager.writeDB();
showDB();
end;
procedure addTramway(sender: Object; e: System.EventArgs);
begin
var temp:Tramway := new Tramway(manager.getIndex(),tk,
TramwayForm := new TramwayInputForm('Введите данные трамвая',temp,tk);
TramwayForm.showDialog();
manager.addNodeFirst(temp);
manager.writeDB();
showDB();
end;
procedure showDB();
begin
bd_l.items.clear();
var h:node := manager.GetHead();
while (h <> nil) do
begin
bd_l.items.add(h.data.
h := h.next;
end;
end;
procedure sort(sender: Object; e: System.EventArgs);
begin
manager.sort();
showDB();
end;
procedure delete(sender: Object; e: System.EventArgs);
begin
var n:integer := bd_l.SelectedIndex;
var h:node := manager.GetHead();
var del:node;
for var i:=0 to n do
begin
if (h = nil) then break;
del := h;
h := h.next;
end;
if (del <> nil) then
begin
manager.delNodeCurr(del);
manager.writeDB();
showDB();
end;
end;
procedure change(sender: Object; e: System.EventArgs);
begin
var n:integer := bd_l.SelectedIndex;
var h:node := manager.GetHead();
var temp:node;
for var i:=0 to n do
begin
if (h = nil) then break;
temp := h;
h := h.next;
end;
if (temp = nil) then exit;
case (temp.data.getTip()) of
mk:begin
MTForm := new MTInputForm('маршрутное такси',MT(temp.data),mk);
MTForm.showDialog();
end;
ak: begin
AutobusForm := new AutobusInputForm('автобус',
AutobusForm.showDialog();
end;
tk: begin
TramwayForm := new TramwayInputForm('трамвай',
TramwayForm.showDialog();
end;
else exit;
end;
manager.writeDB();
showDB();
end;
procedure find(sender: Object; e: System.EventArgs); //поиск по максимальному кол-ву мест
begin
if (find_f.text <> '') then
begin
bd2_l.items.clear();
var fmm:integer := StrToInt(find_f.text);
var h:node := manager.getHead();
while (h<>nil) do
begin
if ( (MT(h.data)).getMaxMest() >= fmm) then
bd2_l.items.add(h.data.
h := h.next;
end;
end;
end;
procedure deleteFind(sender: Object; e: System.EventArgs);
begin
if (find_f.text <> '') then
begin
bd2_l.items.clear();
var fmm:integer := StrToInt(find_f.text);
var h:node := manager.getHead();
var del:node;
while (h<>nil) do
begin
del := h;
h := h.next;
if ( (mt(del.data)).getMaxMest() >= fmm) then
manager.delNodeCurr(del);
end;
manager.writeDB();
showDB();
end;
end;
end;
var w:MainForm;
BEGIN
w := new MainForm();
w.Width:=700;
w.Height:=750;
Application.Run(w);
END.
ПРИЛОЖЕНИЕ В.
А К Т
сдачи / приемки
программного обеспечения
к курсовой работе
по дисциплине «Основы программирования»
кафедра «ПО ВТ и АС»
Студент Гребенщиков Игорь Александрович
Наименование темы: «Программная реализация системы учета городского транспорта»
Перечень подлежащих проверке функций программного обеспечения
ПП |
Основные функции, выполняемые программным продуктом |
Выполнение |
11 |
хранение информации в текстовых файлах |
|
22 |
добавление, удаление и изменение записей |
|
33 |
сортировка по заранее заданному критерию и фильтрация |
|
44 |
поиск по заранее заданному критерию и удаление данных |
|
55 |
расчет рентабельности транспортного средства |
Краткий отзыв на представленное программное обеспечение:
Исходные тексты в полном объеме представлены
Проверила:
Доцент кафедры «ПОВТ и АС»