Автоматизований облік власників автомобілей

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

Міністерство внутрішніх справ України

Харківський національний університет внутрішніх справ

Навчально-науковий інститут менеджменту, соціальних та інформаційних технологій

Кафедра інформаційних систем і технологій в діяльності ОВС

 

 

 

 

 

 

 

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

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

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

 

 

 

 

Виконав:

Перевірив:

 

 

 

 

 

 

Харків

Зміст

 

Вступ

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

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

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

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

2. Алгоритми

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

2.2 Алгоритм red

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

Висновок

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

Вступ

 

В світі глобальної інформатизації всі процеси повинні бути автоматизовані та прості в обробці. Таким чином програмний продукт який буде створюватися надасть можливість перетворити повсякденну рутину роботу в задоволення. Програма буди вести автоматизований облік всіх власників автомобілів.

Я вибрав мову програмування Turbo Pascal, з метою закріплення своїх навиків з програмування.

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

 

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

 

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

Введення і збереження інформації про власників та їхнє авто в файлі:

Модель авто

Місце реєстрації

Категорії водійського посвідчення;

Кількість проїзджених годин

ПІБ власника

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

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

Модель авто

Місце реєстрації

Категорії водійського посвідчення;

Кількість проїзджених годин

ПІБ власника

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

Перегляд скороченого варіанту бази

Перегляд повного варіанту даних, які занесені до бази

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

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

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

 

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

 

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

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

Результат:

Якщо Рi - це критерій вибору по будь якому з визначених критеріїв, Аi буди належати Хi і буде її підмножиною.

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

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

 

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

 

Dfdf

M - поле для вводу моделі авто

Mg - поле для введення місці реєстрації авто

Kvu - поле для введення категорій водійських прав

St - поле для введення кількості годин проведених за рулем

Im - ПІБ власника авто

H - файл де зберігається вся інформація

Fon - для створення головного меню

Text - виведення пунктів головного меню

Kursor - створення курсору який управляє головним меню

Ram - введення даних, та створення рамки для головного пункту

Vvod - збереження до файлу введених відомостей

Poisk - виконання пошуку

Udal - видалення існуючих даних

Red - редагування

2. Алгоритми

 

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

 

 

 

2.2 Алгоритм red

 

 

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

 

uses crt,dos;

type l=record

m,mg,kvu,st, im: string [10] ;

end;

var h: file of l; b: l;

procedure klava (x1,y1,x2,y2,a,b: byte);

var i: integer;

begin

textbackground (a);

textcolor (b);

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 fon;

var i,n: byte;

begin

n: =15;

window (10,5,12,n+5);

for i: =1 to n do

writeln (є);

window (7,5,9,n+5);

for i: =1 to n do

writeln (є);

window (31,5,33,n+5);

for i: =1 to n do

writeln (є);

window (28,5,30,n+5);

for i: =1 to n do

writeln (є);

end;

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

procedure text;

begin

window (11,5,28, 20);

textcolor (12);

writeln; writeln ( Vvod);

writeln; writeln; writeln ( Redaktir. );

writeln; writeln; writeln ( Poisk);

writeln; writeln; writeln ( Udalenie);

writeln; writeln; writeln ( Vixod);

end;

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

procedure kursor (var i: byte; w: byte);

begin

textcolor (w);

window (7,5,33, 20);

case i of

1: begin

gotoxy (3,2);

write (#16);

gotoxy (23,2);

write (#17);

end;

2: begin

gotoxy (3,5);

write (#16);

gotoxy (23,5);

write (#17);

end;

3: begin

gotoxy (3,8);

write (#16);

gotoxy (23,8);

write (#17);

end;

4: begin

gotoxy (3,11);

write (#16);

gotoxy (23,11);

write (#17);

end;

5: begin

gotoxy (3,14);

write (#16);

gotoxy (23,14);

write (#17);

end;

end;

end;

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

procedure ram;

var i: integer;

begin

gotoxy (5,5);

write (#217);

gotoxy (1,5);

write (#218);

gotoxy (5,1);

write (#218);

for i: =1 to 3 do

begin

gotoxy (1+i,5);

write (#196);

end;

gotoxy (35,1);

write (#191);

for i: =1 to 29 do

begin

gotoxy (5+i,1);

write (#196);

end;

gotoxy (35,5);

write (#192);

gotoxy (39,5);

write (#191);

for i: =1 to 3 do

begin

gotoxy (35+i,5);

write (#196);

end;

gotoxy (1,21);

write (#192);

gotoxy (5,21);

write (#191);

gotoxy (5,25);

write (#192);

gotoxy (35,25);

write (#217);

for i: =1 to 29 do