Название: Автоматизований облік власників автотранспорту
Вид работы: контрольная работа
Рубрика: Информатика и программирование
Размер файла: 24.98 Kb
Скачать файл: referat.me-140687.docx
Краткое описание работы: Порядок та характеристика етапів розробки та апробації програми "водій" для збереження повноти інформування правоохоронних органів, та швидкості її надання. Структура зберігаючих даних. Формування вихідного коду даної програми. Створення головного поля.
Автоматизований облік власників автотранспорту
Вступ
Для більш швидкого та повного розслідування злочинів пов’язаних з автотранспортом потрібно володіти якомога більшими відомостями. Таким чином, якщо ми маємо транспорт який причетний до аварії чи злочину, за допомогою програми яка розробляється в темі даної курсової роботи ми будимо мати повні і необхідні дані про власника авто
Призначення даного продукту полегшення то швидкість доступу до інформації.
Я вибрав мову програмування TurboPascal, з метою закріплення своїх навиків з програмування.
1. Основна частина
1.1 Неформальна постановка задачі
Розробити програму – «водій» для збереження повноти інформування правоохоронних органів, та швидкості її надання.
- Введення і збереження інформації про власників автотранспорту в типізований файлі:
o ПІБ власника автотранспорту
o Назва та марка авто
o Паспортні дані водія;
o Адреса прописки.
- Можливість редагування даної бази по певним структурним елементам
- Можливість перегляду всіх існуючих документів
- Можливість видалення всієї бази.
- Зручний інтерфейс для користувача
- Швидкість та простота роботи в даній програмі
- Надійність та достовірність збережених відомостей
1.2 Формальна постановка задачі
Вихідні дані:
Позначимо сукупність всіх даних, які будуть заноситись до бази даних через множину T, таким чином T={T1 , T2 , …, Tі }, де і=1..n, Tі – дані про власників авто.
Кожен власник має певні відомості про себе, що стосуються його особистості, отже маємо Ті ={Ті1, Ті2, …, Ті j }, j=1..4.
Таким чином ми маємо матрицю всіх відомостей які зберігаються в базі даних, та заносяться користувачем.
Результат:
Множина Рij , яка формуються з вхідних даних а саме множини Тij
Математична модель :
В
k
– критерій який використовується для пошуку, де k – номер критерія з зазначених чотирьох. Таким чином отримуємо множину Zij
Aij
, де Zij
відповідає заданому критерію В
k
1.3 Структура зберігаючих даних
B – структурована запис для занесення відомостей про власників авто до типізованого файлу.
· Av – поле запису строкового типу для занесення марки автомобіля власника.
· Fio – поле запису строкового типу для занесення прізвища, ім’я та по-батькові власника.
· Pas – поле запису строкового типу для занесення паспортних даних власника.
· Mg – поле запису строкового типу для занесення адреси проживання.
Ramka – процедура яка забезпечує прорисовку рамки.
Ris – процедура яка прорисовує основне меню програми.
Menin – процедура яка забезпечує управління головним меню
Punkt – процедура для зарисовки певної області
Vv – процедура для введення та збереження даних
Red – процедура для редагування збережених раніше відомостей
Udal – процедура для видалення всієї бази.
2. Вихідний код програми
usescrt, dos;
type b=record
av:string[10];
fio, pas, mg:string[15];
end;
var f:file of b; bas:b;
procedure ramka (x1, y1, x2, y2, a:byte);
var i:integer;
begin
textcolor(0);
window (x1, y1, x2, y2);
textbackground(a);
clrscr;
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 ris;
begin
ramka (10,3,30,7,7);
ramka (10,6,30,10,7);
ramka (10,9,30,13,7);
ramka (10,12,30,16,7);
window (10,3,30,16);
gotoxy (1,4); write(#204);
gotoxy (1,7); write(#204);
gotoxy (1,10); write(#204);
gotoxy (21,4); write(#185);
gotoxy (21,7); write(#185);
gotoxy (21,10); write(#185);
end;
{–}
procedure menin (x1, y1, x2, y2, a:byte);
begin
window (x1, y1, x2, y2);
textbackground(a);
clrscr;
textcolor(1);
write (' Zapolnit');
window (x1, y1+3, x2, y2+3);
clrscr;
write (' Redaktirovat');
window (x1, y1+6, x2, y2+6);
clrscr;
write (' Udalit');
window (x1, y1+9, x2, y2+9);
clrscr;
write (' Vixod');
end;
{–}
procedure punkt (x, y, z, c, q:byte; s:string);
begin
window (x, y, z, c);
textbackground(q);
clrscr;
textcolor(10);
write(s);
end;
procedure pamka (x1, y1, x2, y2:integer);
var i, c:integer;
begin
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 vv;
var i, n:integer;
begin
window (1,1,40,25);
textbackground(0);
clrscr;
textcolor(2);
pamka (1,1,39,25);
window (2,2,38,25);
gotoxy (6,1);
textcolor(6);
writeln ('ZAPOLNENIE UCHOTA VODITELEY');
window (2,3,38,25);
textcolor(7);
write ('Vvedi kol-vo voditeley – ');
readln(n);
assign (f, 'd:po');
rewrite(f);
for i:=1 to n do
begin
with bas do
begin
clrscr;
gotoxy (8,1);
writeln ('VODITEL-', i);
write ('Vvedi F.I.O voditela – '); readln(fio);
write ('Vvedi avto na kotorom on ezdiet – '); readln(av);
write ('Vvedi seriu i nimer pasporta voditela – '); readln(pas);
write (' Vvedi adres progivania – '); readln(mg);
seek (f, filesize(f));
write (f, bas);
end;
close(f);
end;
end;
procedure punkt (x, y, z, c, q:byte; s:string);
begin
window (x, y, z, c);
textbackground(q);
clrscr;
textcolor(10);
write(s);
end;
procedure pamka (x1, y1, x2, y2:integer);
var i, c:integer;
begin
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 red;
var i, j, p:integer;
begin
window (1,1,40,25);
textbackground(0);
clrscr;
textcolor(7);
if FSearch ('po', 'd:')='' then
begin
window (1,1,40,25);
textbackground(0);
clrscr;
pamka (10,10,35,15);
gotoxy (16,11);
textcolor(132);
writeln ('BASA NE SOZDANA');
textcolor(7);
end
else
begin
clrscr;
window (1,1,40,25);
textcolor(6);
pamka (1,1,39,25);
gotoxy (5,2);
textcolor(3);
writeln ('REDAKTIROVANIE UCHOTA VODITELEY');
window (2,3,38,25);
assign (f, 'd:po');
reset(f);
gotoxy (13,1);
textcolor(4);
writeln ('VSA BASA:');
window (2,4,38,25);
for i:=0 to filesize(f) – 1 do
begin
seek (f, i);
read (f, bas);
with bas do
begin
clrscr;
textcolor(7);
writeln ('voditel-', i+1); writeln;
writeln ('F.I.O voditela-', fio); writeln;
write ('Avto na kotorom on ezdiet-', av); writeln;
write ('Seria i nomer pasporta voditela-', pas); writeln;
write ('Adres progivania-', mg); writeln;
for j:=1 to 30 do
delay(9999);
end;
end;
clrscr;
write ('Vvedi nomer voditela kotorogo budem redaktiovat – '); readln(p);
seek (f, p-1);
read (f, bas);
with bas do
begin
clrscr;
textcolor(7);
writeln ('voditel-', p); writeln;
writeln ('F.I.O voditela-', fio); writeln;
write ('Avto na kotorom on ezdiet-', av); writeln;
write ('Seria i nomer pasporta voditela-', pas); writeln;
write ('Adres progivania-', mg); writeln;
end;
writeln;
textcolor(4);
writeln ('Dla prestuplenia k redaktirovaniu nagmi «ENTER» ');
readln;
textcolor(7);
with bas do
begin
clrscr;
gotoxy (8,1);
writeln ('VODITEL-', p);
write ('Vvedi F.I.O voditela – '); readln(fio);
write ('Vvedi avto na kotorom on ezdiet – '); readln(av);
write ('Vvedi seriu i nimer pasporta voditela – '); readln(pas);
write (' Vvedi adres progivania – '); readln(mg);
seek (f, p-1);
write (f, bas);
end;
close(f);
end;
end;
{…………………………………………………}
procedure udal;
var s:string; i, j:integer;
begin
if FSearch ('po', 'd:')='' then
begin
window (1,1,40,25);
textbackground(0);
clrscr;
pamka (10,10,35,15);
gotoxy (16,11);
textcolor(132);
writeln ('BASA NE SOZDANA');
textcolor(7);
end
else
begin
window (1,1,40,25);
textbackground(0);
clrscr;
window (10,10,35,15);
Writeln ('Dla udalenia nagmi – «ENTER» ');
if readkey=#13 then
begin
textcolor(4);
s:='UDALENO';
for i:=1 to length(s) do
begin
write (s[i]);
for j:=1 to 5 do
delay(9999);
end;
end
else
end;
end;
{:}
var i:byte;
key:char; k, p:byte;
begin
textmode(c40);
{vv;}
{red;}
{udal;}
repeat
window (1,1,40,25);
textbackground(7);
clrscr;
ris;
menin (11,4,29,5,7);
i:=1;
punkt (11,4,29,5,4,' Zapolnit');
repeat
newreadkey (key, k);
case k of
72: begin
if i=1 then
p:=4;
if i>1 then
p:=i-1;
end;
80: begin
if i=4 then
p:=1;
if i<4 then
p:=i+1;
end;
end;
i:=p;
if i=1 then
begin
menin (11,4,29,5,7);
punkt (11,4,29,5,4,' Zapolnit');
end;
if i=2 then
begin
menin (11,4,29,5,7);
punkt (11,7,29,8,4,' Redaktirovat');
end;
if i=3 then
begin
menin (11,4,29,5,7);
punkt (11,10,29,11,4,' Udalit');
end;
if i=4 then
begin
menin (11,4,29,5,7);
punkt (11,13,29,14,4,' Vixod');
end;
until key=#13;
case i of
1: vv;
2:red;
3:udal;
end;
until i=4;
end.
Висновок
В даній курсовій роботі буда розроблена програма «Водій», де зберігаються всі відомості про власників автомобілів і при необхідності їх можливо легко проглянути та використати для необхідних мір при розкритті злочинів чи ДТП.
Було створене головне поле, де графічно створені пункти вибору певного дійства яке вибрав користувач. Під слофом графіка тут розуміється псевдографіка яка доступна завдяки модулю CRT. Також в «Водій» використовуються процедури з модулю DOS. Була використані приємна кольорова гама, яка надає розслабленості користувачу, а також концентрує увагу на певних важливих елементах програми.
Список використаної літератури
1.Струков В.М. Основи алгоритмизации и програмирования. Часть 2. Учебное пособие. – Харьков: Изд. Нац. ун-та внутр. дел, 2003. – 188 с.
2.Сердюченко В.Я. Розробка алгоритмів та програмування на мові TurboPascal. – X., 1995.
3.Немнюгин С.А. TurboPascal. – СПб.: Питер, 2002. – 496 с.: ил.
Похожие работы
-
Автоматизований облік надходження, зберігання і збуту продукції на товарній базі
Розробка програми "товарна база", призначеної для збереження та перегляду, а також автоматизованої обробки інформації, що надає користувач. Формальна та неформальна постановка задачі. Структура зберігаючих даних. Вихідний код програми, її апробація.
-
Автоматизований облік власників автомобілей
Розробка програми "Авто" для введення та збереження інформації про власників та їхні автомобілі. Побудова математичної моделі. Критерії вибору та пошуку даних. Структура введених та збережених у файлах програми даних. Алгоритм основної програми та її код.
-
Автоматизований аналіз злочинності по областям
Розробка програми "Злочин", що призначена для збереження та перегляду, а також автоматичного аналізу всієї інформації про злочинність. Порядок і основні принципи формування структури даних, постановка задачі. Написання та лістинг розробленої програми.
-
Автоматизований аналіз злочинності
Створення програми "Аналізатор злочинності в регіоні". Структура зберігаючих даних. Неформальна постановка задачі. Алгоритм основної програми. Введення і збереження інформації. Можливість перегляду всіх існуючих документів. Вихідний код програми.
-
Автоматизоване нарахування заробітної плати
Методика та особливості створення програми "Автоматизоване нарахування платні" для збереження, перегляду та аналізу введеної інформації, її алгоритм та вихідний код. Аналіз факторів, які впливають на формування заробітної платні робітника підприємства.
-
Автоматизована реєстрація і облік автомобілей
Розробка програми реєстрації автомобілів для збереження та перегляду інформації про модель машини, рік її випуску, об'єм двигуна і витрати палива. Складання алгоритмів розв'язання поставленої задачі та написання тексту програми в середовищі Turbo Pascal.
-
Розробка програми передачі даних через послідовний порт мікроконтролера
Розрахунок часових затримок для формування імпульсів у програмі передачі даних через послідовний порт мікроконтролера, а також розрахунок швидкості передачі даних через послідовний порт. Алгоритм підпрограми обробки переривань від послідовного порту.
-
База даних по приватним підприємствам регіону
Програма "Приватка" для збереження та перегляду всієї інформації, що стосується пошуку підприємства. Розробка алгоритму та програмування на мові Turbo Pascal. Формальна та неформальна постановка задачі. Структура зберігаючих даних. Вихідний код програми.
-
База даних по обліку вогнепальної зброї
Розробка програми "Облік вогнепальної зброї" для більш простої та оптимальної обробки інформації по зброї. Алгоритм процедури Zap. Занесення відомостей по вогнепальній зброї користувачем та зберігання її до типізованого файлу. Вихідний код програми.
-
Аналіз успішності групи
Розробка програми мовою Turbo Pascal для автоматизації процесу перевірки оцінок та аналізу успішності групи, для збереження і перегляду всієї інформації стосовно навчання. Формальна постановка задачі, створення алгоритму та вихідного коду програми.