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

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык украинский
Дата добавления 07.10.2010
Размер файла 20,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

5

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

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

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

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

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

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

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

Виконав:

Перевірив:

Харків

Зміст

  • Вступ
    • 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

begin

gotoxy (5+i,25);

write (#196);

end;

gotoxy (35,21);

write (#218);

gotoxy (39,21);

write (#217);

for i: =1 to 3 do

begin

gotoxy (1+i,21);

write (#196);

end;

for i: =1 to 3 do

begin

gotoxy (35+i,21);

write (#196);

end;

for i: =1 to 3 do

begin

gotoxy (5,1+i);

write (#179);

end;

for i: =1 to 3 do

begin

gotoxy (35,1+i);

write (#179);

end;

for i: =1 to 3 do

begin

gotoxy (5,21+i);

write (#179);

end;

for i: =1 to 3 do

begin

gotoxy (35,21+i);

write (#179);

end;

for i: =1 to 15 do

begin

gotoxy (1,5+i);

write (#179);

end;

for i: =1 to 15 do

begin

gotoxy (39,5+i);

write (#179);

end;

end;

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

procedure vvod;

var i,n: integer;

begin

window (1,1,40,25);

textbackground (0);

clrscr;

textcolor (3);

ram;

gotoxy (18,2);

write ('VVOD');

window (6,6,34, 20);

textcolor (7);

Write ('Vvedi kol-vo vodil-'); readln (n);

clrscr;

assign (h,'d: \po. po'); rewrite (h);

for i: =1 to n do

begin

seek (h,filesize (h));

with b do

begin

clrscr;

writeln ('VODITEL-', i);

write ('Vvedi model avt. - '); readln (m);

write ('Vvedi mesto reg. - '); readln (mg);

write ('Vvedi kategor. vod. prav-'); readln (kvu);

write ('Vvedi staj vogdenia-'); readln (st);

write ('Vvedi FIO - '); readln (im);

end;

write (h,b);

end;

close (h);

end;

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

procedure poisk;

var s: string; i: integer;

begin

window (1,1,40,25);

textbackground (0);

clrscr;

textcolor (2);

window (1,1,40,25);

ram;

gotoxy (18,2);

Write ('POISK');

textcolor (7);

window (6,6,34, 20);

if fsearch ('po. po','d: \') ='' then

begin

textcolor (132);

gotoxy (8,7);

write ('FAIL NE NAYDEN');

end

else

begin

write ('Vvedi to,chto ishesh-'); readln (s);

assign (h,'d: \po. po'); reset (h);

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

begin

seek (h, i); read (h,b);

with b do

begin

if (s=m) or (s=mg) or (s=kvu) or (s=st) or (s=im) then

begin

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

writeln ('Model avt. - ',m);

writeln ('Mesto reg. - ',mg);

writeln ('Kategor. vod. prav-',kvu);

writeln ('Stag vogdenia-',st);

writeln (' FIO voditela - ', im);

writeln;

end

else

write ('Po zaprosu nichego ne naydeno');

end;

end;

close (h);

end;

end;

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

procedure udal;

var xc: char;

begin

window (1,1,40,25);

textbackground (0);

clrscr;

textcolor (4);

ram;

gotoxy (16,2);

write ('UDALENIE');

textcolor (7);

window (6,6,34, 20);

if fsearch ('po. po','d: \') ='' then

begin

textcolor (132);

gotoxy (8,7);

write ('FAIL NE NAYDEN');

end

else

begin

write ('Vi deystvitelno xotite udalit fail',#63);

textcolor (4);

write ('y/n '); textcolor (7); readln (xc);

case xc of

'y': begin

assign (h,'D: \po. po');

erase (h); writeln;

writeln ('UDALENO');

end;

'n': readln;

end;

end;

end;

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

procedure red;

var i: integer;

begin

window (1,1,40,25);

textbackground (0);

clrscr;

window (1,1,40,25);

textcolor (1);

ram;

gotoxy (13,2);

write ('REDAKTIROVANIE');

textcolor (7);

window (6,6,34, 20);

if fsearch ('po. po','d: \') ='' then

begin

textcolor (132);

gotoxy (8,7);

write ('FAIL NE NAYDEN');

end

else

begin

assign (h,'d: \po. po');

reset (h);

writeln ('Vsego voditeley-',filesize (h));

write ('Vvedi nomer dlya red. - '); readln (i);

seek (h, i-1);

read (h,b);

with b do

begin

writeln ('VODITEL-', i);

writeln ('Model avt. - ',m);

writeln ('Mesto reg. - ',mg);

writeln ('Kategor. vod. prav-',kvu);

writeln ('Stag vogdenia-',st);

writeln (' FIO voditela - ', im);

writeln;

end;

writeln ('Dla red. nagmi "ENTER"');

readln;

clrscr;

with b do

begin

clrscr;

writeln ('VODITEL-', i);

write ('Vvedi model avt. - '); readln (m);

write ('Vvedi mesto reg. - '); readln (mg);

write ('Vvedi kategor. vod. prav-'); readln (kvu);

write ('Vvedi stag vogdenia-'); readln (st);

write ('Vvedi FIO - '); readln (im);

end;

seek (h, i-1); write (h,b);

end;

close (h);

end;

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

var i,r,p: byte;

t: char;

begin

textmode (c40);

repeat

window (1,1,40,25);

textbackground (5);

clrscr;

textcolor (11);

fon;

text;

i: =1;

kursor (i,9);

repeat

newreadkey (t,r);

p: =i;

case r of

72: i: =i-1;

80: i: =i+1;

end;

case i of

0: i: =1;

6: i: =5;

end;

kursor (p,5);

kursor (i,9);

until t=#13;

case i of

1: vvod;

2: red;

3: poisk;

4: udal;

end;

until i=5;

end.

Висновок

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

Мовою програмування я обрав Паскаль, в виконував її в середовищі Turbo Pascal

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

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

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

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


Подобные документы

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

    курсовая работа [19,4 K], добавлен 07.10.2010

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

    курсовая работа [1,3 M], добавлен 14.04.2009

  • Порядок та характеристика етапів розробки та апробації програми "водій" для збереження повноти інформування правоохоронних органів, та швидкості її надання. Структура зберігаючих даних. Формування вихідного коду даної програми. Створення головного поля.

    контрольная работа [14,3 K], добавлен 07.10.2010

  • Розробка програми реєстрації і автоматизованого створення звіту на рік по викраденим машинам. Математична модель задачі, структура зберігаючих даних. Створення алгоритмів основної програми на мові Turbo Pascal і процедур Vvod і Red. Вихідний код програми.

    курсовая работа [25,4 K], добавлен 07.10.2010

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

    контрольная работа [13,3 K], добавлен 07.10.2010

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

    курсовая работа [27,0 K], добавлен 07.10.2010

  • Побудова інформаційно-математичної моделі задачі. Визначення структури даних, розробка інтерфейсу. Складання коду програми за допомогою мови програмування Delphi 7.0. Реалізація проекту у візуальному середовищі. Інструкція з експлуатації програми.

    курсовая работа [601,3 K], добавлен 03.09.2009

  • Розробка програми "Злочин", що призначена для збереження та перегляду, а також автоматичного аналізу всієї інформації про злочинність. Порядок і основні принципи формування структури даних, постановка задачі. Написання та лістинг розробленої програми.

    контрольная работа [12,3 K], добавлен 07.10.2010

  • Програма "Приватка" для збереження та перегляду всієї інформації, що стосується пошуку підприємства. Розробка алгоритму та програмування на мові Turbo Pascal. Формальна та неформальна постановка задачі. Структура зберігаючих даних. Вихідний код програми.

    курсовая работа [20,9 K], добавлен 07.10.2010

  • Можливості програмування за допомогою Delphi. Розробка програми "Кадровий облік", її функції. Алгоритм задачі: логіка програми, визначення структури даних та інтерфейсу. Аналіз програми та її тестування: переваги та недоліки у порівнянні з аналогами.

    курсовая работа [1,6 M], добавлен 07.05.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.