рефераты
рефераты
Главная
Рефераты по рекламе
Рефераты по физике
Рефераты по философии
Рефераты по финансам
Рефераты по химии
Рефераты по цифровым устройствам
Рефераты по экологическому праву
Рефераты по экономико-математическому моделированию
Рефераты по экономической географии
Рефераты по экономической теории
Рефераты по этике
Рефераты по юриспруденции
Рефераты по языковедению
Рефераты по юридическим наукам
Рефераты по истории
Рефераты по компьютерным наукам
Рефераты по медицинским наукам
Рефераты по финансовым наукам
Психология и педагогика
Промышленность производство
Биология и химия
Языкознание филология
Издательское дело и полиграфия
Рефераты по краеведению и этнографии
Рефераты по религии и мифологии
Рефераты по медицине
Рефераты по сексологии
Рефераты по информатике программированию
Рефераты по биологии
Рефераты по экономике
Рефераты по москвоведению
Рефераты по экологии
Рефераты по физкультуре и спорту
Топики по английскому языку
Рефераты по математике
Рефераты по музыке
Остальные рефераты
Рефераты по авиации и космонавтике
Рефераты по административному праву
Рефераты по безопасности жизнедеятельности
Рефераты по арбитражному процессу
Рефераты по архитектуре
Рефераты по астрономии
Рефераты по банковскому делу
Рефераты по биржевому делу
Рефераты по ботанике и сельскому хозяйству
Рефераты по бухгалтерскому учету и аудиту
Рефераты по валютным отношениям
Рефераты по ветеринарии
Рефераты для военной кафедры
Рефераты по географии
Рефераты по геодезии
Рефераты по геологии
Рефераты по геополитике
Рефераты по государству и праву
Рефераты по гражданскому праву и процессу
Рефераты по делопроизводству
Рефераты по кредитованию
Рефераты по естествознанию
Рефераты по истории техники
Рефераты по журналистике
Рефераты по зоологии
Рефераты по инвестициям
Рефераты по информатике
Исторические личности
Рефераты по кибернетике
Рефераты по коммуникации и связи
Рефераты по косметологии
Рефераты по криминалистике
Рефераты по криминологии
Рефераты по науке и технике
Рефераты по кулинарии
Рефераты по культурологии
Рефераты по зарубежной литературе
Рефераты по логике
Рефераты по логистике
Рефераты по маркетингу
Рефераты по международному публичному праву
Рефераты по международному частному праву
Рефераты по международным отношениям
Рефераты по культуре и искусству
Рефераты по менеджменту
Рефераты по металлургии
Рефераты по налогообложению
Рефераты по педагогике
Рефераты по политологии
Рефераты по праву
Биографии
Рефераты по предпринимательству
Рефераты по психологии
Рефераты по радиоэлектронике
Рефераты по риторике
Рефераты по социологии
Рефераты по статистике
Рефераты по страхованию
Рефераты по строительству
Рефераты по схемотехнике
Рефераты по таможенной системе
Сочинения по литературе и русскому языку
Рефераты по теории государства и права
Рефераты по теории организации
Рефераты по теплотехнике
Рефераты по технологии
Рефераты по товароведению
Рефераты по транспорту
Рефераты по трудовому праву
Рефераты по туризму
Рефераты по уголовному праву и процессу
Рефераты по управлению

Курсовая работа: Автоматизована реєстрація і облік автомобілей


Курсовая работа: Автоматизована реєстрація і облік автомобілей

Міністерство внутрішніх справ України Харківський національний університет внутрішніх справ Навчально-науковий інститут менеджменту, соціальних та інформаційних технологій Кафедра інформаційних систем і технологій в діяльності ОВС

Курсова робота

з дисципліни "Основи програмування та алгоритмічні мови"

на тему: "Автоматизована реєстрація і облік автомобілей"

Харків


Зміст

Вступ

1. Основна частина

1.1 Неформальна постановка задачі

1.2 Формальна постановка задачі

1.3 Структура зберігаючих даних:

2. Алгоритми

2.1 Алгоритм основної програми

2.2 Алгоритм процедури vvod

3. Вихідний код програми

Висновок

Список використаної літератури


Вступ

Реєстрація автомобілів для полегшення роботи багатьох служб. Сьогодні це питання не стоїть так гостро як декілька років назад. Розроблено багато програм які полегшують роботу з таким видом інформації як електронний. Але моєю задачею є створити програму яка буду мати невеликі розміри та виконуватиме всі необхідні функції.

Призначення даного продукту полегшити роботу працівникам ОВС, але при цьому мати найпростіший інтерфейс з максимальною працевіддачею.

Я вибрав мову програмування Turbo Pascal бо важаю її найбільш оптимальною для вирішення даної задачі та з метою закріплення своїх навиків з програмування в даному середовищі.


1. Основна частина

1.1 Неформальна постановка задачі

Розробити програму-"реєстрація автомобілів" для збереження та перегляду всієї інформації що стосується автотранспорту.

ü    Введення і збереження інформації в типізованому файлі:

o        Модель машини

o        Рік випуску машини

o        Витрати палива на 100 кілометрів;

o        Об’єм двигуна.

ü    Можливість редагування даної бази

ü    Організація пошуку за критеріями:

o        Модель машини

o        Рік випуску машини

o        Витрати палива на 100 кіломитрів;

o        Об’єм двигуна.

ü    Можливість перегляду всіх існуючих документів

ü    Можливість видалення всієї бази.

ü    Зручний інтерфейс для користувача

ü    Швидкість та простота роботи в даній програмі

ü    Введення необхідних підказок для користувача

1.2 Формальна постановка задачі

Вихідні дані:

         Нехай Х- власників авто, тоді H=||Hi|| - множина автомобілей, де і=1..n

Результат:

Якщо Oi – це критерій вибору по будь якому з визначених критеріїв, Bi буди належати Oi і буде її підмножиною.

Математична модель:

Bi – критерій який використовується для пошуку, де i- номер критерія з зазначених . Таким чином отримуємо множину Bi  Oi         

 

1.3 Структура зберігаючих даних

Lk – структурований запис для введення та зберігання інформації

·                   Ml – поле строкового типу для запису моделі автотранспорту

·                   Gv – поле строкового типу для запису року випуску машини

·                   tp - поле строкового типу для запису запису витрати палива

·                   odv - поле строкового типу для запису об’єму двигуна

f – типізований файл для зберігання автотранспорту

menu_pickto - процедура яка прорисовує головне меню

menu_text - процедура виведення пунктів меню

menu_vibor – процедура для управляння головним меню

pamka - процедура яка малює рамку

tabl - процедура яка виводить на екран таблицю

vvod – процедура введення інформації, та занесення її до файлу

viv - процедура пошуку за певними критеріями


2. Алгоритми

 

2.1 Алгоритм основної програми


2.2 Алгоритм процедури vvod

3. Вихідний код програми

uses crt,dos;

type lk=record

gv,ml,odv,tp:string[10];

end;

{..................................}

var f:file of lk; ma:lk;

{--------RAMKA-----------}

procedure ramka (x1,y1,x2,y2{Љ®®а¤Ё­ вл а ¬ЄЁ ўе®¤­лҐ},

{x01,y01{Љ®®а¤Ё­ вл ўлў®¤ ⥪бв ў а ¬ЄҐ}{:integer;

st{’ҐЄбв ўлў®¤Ё¬л© ў а ¬ЄҐ}{:string;}

a{ЏҐаҐ¬Ґ­­ п д®­ а ¬ЄЁ}:byte);

var i:integer;

begin

textbackground(a);

textcolor(red);

window (x1,y1,x2,y2);

write('Ъ');

for i:=1 to (x2-x1)-1 do

begin

write('Д');

end;

write('ї');

for i:=2 to (y2-y1)-1 do

begin

gotoxy(1,i);

write('і');

gotoxy(x2-x1+1,i);

write('і');

end;

write('А');

for i:=1 to (x2-x1)-1 do

begin

write('Д');

end;

write('Щ');

end;

{------------------------}

procedure newreadkey (var a{‘зЁвлў Ґ¬л© Є®¤ бЁ¬ў®" }:char;

var b{ђ §иЁаҐ­л© Є®¤ Є" ўЁиЁ}:byte);

begin

b:=0;

a:=readkey;

if a=#0 then

b:=ord(readkey);

end;

{--------------------}

procedure menu_pickto(n:byte);

var i:byte;

begin

textcolor(14);

for i:=1 to n do

begin

writeln('| | | | | |');

writeln(' \ \ \ / / /');

writeln(' | | | | | |');

writeln(' / / / \ \ \');

end;

end;

{--------------------}

procedure menu_text(x1,y1,c1,c2,c3,c4:byte;s1,s2,s3,s4:string);

begin

gotoxy(x1,y1);

textcolor(c1);

write(s1);

gotoxy(x1,y1+4);

textcolor(c2);

write(s2);

gotoxy(x1,y1+8);

textcolor(c3);

write(s3);

gotoxy(x1,y1+12);

textcolor(c4);

write(s4);

end;

{-------------------}

procedure menu_vibor(x,y,c:byte);

begin

textcolor(c);

gotoxy(x,y);

write('_ _ _ _ _ _ _ _');

{window(x,y,x+15,y+2);

textbackground(5);

clrscr;}

gotoxy(x,y+3);

write('_ _ _ _ _ _ _ _');

end;

procedure pamka (x1,y1,x2,y2:integer);

var i,c:integer;

begin

textcolor(7);

gotoxy(x1,y1);

write(#201);

for i:=1 to x2-x1-1 do

begin

gotoxy(x1+i,y1);

write(#205);

end;

gotoxy(x2,y1);

write(#187);

for i:=1 to y2-y1-1 do

begin

gotoxy(x2,y1+i);

write(#186);

end;

gotoxy(x2,y2);

write(#188);

for i:=1 to x2-x1-1 do

begin

gotoxy(x2-i,y2);

write(#205);

end;

gotoxy(x1,y2);

write(#200);

for i:=1 to y2-y1-1 do

begin

gotoxy(x1,y1+i);

write(#186);

end;

end;

{...............................................}

procedure tabl(st:string);

var i,j,x,y:integer;

begin

for i:=1 to 80 do

begin

gotoxy(0+i,2);

write(#196);

end;

for i:=1 to 80 do

begin

gotoxy(0+i,4);

write(#196);

end;

gotoxy(1,1);

write(#218);

gotoxy(80,1);

write(#191);

for i:=1 to 78 do

begin

gotoxy(1+i,1);

write(#196);

end;

gotoxy(35,1);

textcolor(3);

writeln(st);

textcolor(7);

for i:=1 to 23 do

begin

gotoxy(1,1+i);

write(#179);

end;

gotoxy(1,2);

write(#195);

gotoxy(1,4);

write(#195);

y:=2;

for i:=1 to 10 do

begin

gotoxy(1,4+y);

write(#195);

y:=y+2;

end;

gotoxy(1,24);

write(#192);

for i:=1 to 78 do

begin

gotoxy(1+i,24);

write(#196);

end;

for i:=1 to 23 do

begin

gotoxy(80,1+i);

write(#179);

end;

gotoxy(80,24);

write(#217);

gotoxy(80,2);

write(#180);

y:=2;

for i:=1 to 10 do

begin

gotoxy(80,2+y);

write(#180);

y:=y+2;

end;

y:=2;

for j:=1 to 10 do

begin

y:=y+2;

for i:=1 to 78 do

begin

gotoxy(1+i,y);

write(#196);

end;

end;

x:=20;

for i:=1 to 3 do

begin

gotoxy(0+x,2);

write(#194);

x:=x+20;

end;

x:=20;

for i:=1 to 3 do

begin

gotoxy(0+x,24);

write(#193);

x:=x+20;

end;

x:=0;

for j:=1 to 3 do

begin

x:=x+20;

for i:=1 to 21 do

begin

gotoxy(0+x,2+i);

write(#179);

end;

end;

x:=0;

for j:=1 to 3 do

begin

y:=4;

for i:=1 to 10 do

begin

gotoxy(20+x,y);

write(#197);

y:=y+2;

end;

x:=x+20;

end;

textcolor(3);

gotoxy(5,3);

write('model mahini');

gotoxy(24,3);

write('obem dvigatela');

gotoxy(44,3);

writeln('god vipuska');

gotoxy(61,3);

write('rashod topliva');

end;

{.............................................}

procedure vvod;

var st:string; i,n:integer;

begin

window(1,1,80,25);

clrscr;

assign(f,'d:\tyu');

rewrite(f);

pamka(1,1,80,3);

gotoxy(37,2);

writeln('VVOD');

pamka(1,1,80,24);

gotoxy(1,3);

write(#204);

gotoxy(80,3);

write(#185);

window(2,4,79,23);

write('vvedite kolichestvo avtomobiley- ');

readln(n);

for i:=1 to n do

begin

with ma do

begin

clrscr;

gotoxy(2,4);

writeln('mahina-',i);

write('vvedi model mahini- ');readln(ml);

write('vvedi god vipuska- ');readln(gv);

write('vvedi rasxod topliva- ');readln(tp);

write('vvedi obem dv. ');readln(odv);

writeln;

end;

seek(f,filesize(f));

write(f,ma);

end;

close(f);

end;

procedure viv;

var st:string;i,y:integer;

begin

window(1,1,80,25);

if FSearch('tyu','d:\')='' then

begin

textbackground(0);

clrscr;

textcolor(132);

writeln('FAIL NE NAYDEN');

readln;

end

else

begin

textbackground(0);

clrscr;

st:='baza dannix';

tabl(st);

assign(f,'d:\tyu');

reset(f);

y:=1;

for i:=0 to filesize(f)-1 do

begin

seek(f,i);

read(f,ma);

with ma do

begin

gotoxy(2,4+y);

write(i+1);

gotoxy(3,4+y);

write(#179);

gotoxy(4,4+y);

write(ml);

gotoxy(24,4+y);

write(odv);

gotoxy(44,4+y);

write(gv);

gotoxy(64,4+y);

write(tp);

end;

y:=y+2;

end;

end;

readln;

end;

procedure poi;

var i:integer ; s:string;

begin

window(1,1,80,25);

if FSearch('tyu','d:\')='' then

begin

textbackground(0);

clrscr;

textcolor(132);

writeln('FAIL NE NAYDEN');

readln;

end

else

begin

window(1,1,80,25);

clrscr;

assign(f,'d:\tyu');

reset(f);

pamka(1,1,80,3);

gotoxy(37,2);

writeln('Poisk');

pamka(1,1,80,24);

gotoxy(1,3);

write(#204);

gotoxy(80,3);

write(#185);

window(2,4,79,23);

write('Kluch dla poicka-');

textcolor(4);

readln(s);

textcolor(7);

for i:=0 to filesize(f)-1 do

begin

seek(f,i);

read(f,ma);

with ma do

begin

if (s=ml) or (s=odv) or (s=gv) or (s=tp) then

begin

textcolor(4);

writeln('zapis-',i+1);

write('model mashini- ' ,ml);

write('god vipuska- ',gv);

write(' obem dvigatela- ',odv);

write('rasxod topliva- ',tp);

end;

end;

end;

end;

end;

{:::::::::::::::::::::::::::::::}

var e:char;r,i:byte;

begin

{clrscr;

vvod;

viv;

poi;

readln;}

repeat

clrscr;

window(1,1,80,25);

textbackground(1);

clrscr;

i:=1;

window (6,4,34,22);

menu_pickto(6);

textcolor(14);

menu_text(8,3,12,14,14,14,' Vvod',' Pokasat',' Nayti',' Viyti');

menu_vibor(7,1,14);

repeat

newreadkey(e,r);

if r=72 then

i:=i-1;

if r=80 then

i:=i+1;

if i=0 then

i:=4;

if i=5 then

i:=1;

case i of

1: begin

menu_vibor(7,5,1);

menu_vibor(7,13,1);

menu_text(8,3,12,14,14,14,' Vvod',' Pokasat',' Nayti',' Viyti');

menu_vibor(7,1,14);

end;

2: begin

menu_vibor(7,1,1);

menu_vibor(7,9,1);

menu_text(8,3,14,12,14,14,' Vvod',' Pokasat',' Nayti',' Viyti');

menu_vibor(7,5,14);

end;

3: begin

menu_vibor(7,5,1);

menu_vibor(7,13,1);

menu_text(8,3,14,14,12,14,' Vvod',' Pokasat',' Nayti',' Viyti');

menu_vibor(7,9,14);

end;

4: begin

menu_vibor(7,9,1);

menu_vibor(7,1,1);

menu_text(8,3,14,14,14,12,' Vvod',' Pokasat',' Nayti',' Viyti');

menu_vibor(7,13,14);

end;

end;

until e=#13;

case i of

1:vvod;

2:viv;

3:poi;

end;

until i=4;

end.


Висновок

В даній курсовій роботі були виконане всі поставлені задачі. Було продемонстровано мій рівень програмування в середовищі Турбо Паскаль. Результатом цієї роботи є програмний продукт, який має зручний інтерфейс, простоту в застосуванні та виконує всі покладені в основу функції.

Я обрав мову програмування Паскаль, оскільки вважаю що для даної роботи він підходить найбільш.


Список використаної літератури

1.                Струков В.М. Основи алгоритмизации и програмирования. Часть 2. Учебное пособие. – Харьков: Изд. Нац. ун-та внутр.дел,2003. – 188 с.

2.                 Сердюченко В.Я. Розробка алгоритмів та програмування на мові Turbo Pascal. – X.,1995.

3.                 Немнюгин С.А. Turbo Pascal. – СПб.: Питер, 2002. – 496 с.: ил.



© 2009 РЕФЕРАТЫ
рефераты