Автоматизований аналіз злочинності

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

Автоматизований аналіз злочинності

Курсовой проект

Компьютеры, программирование

Другие курсовые по предмету

Компьютеры, программирование

Сдать работу со 100% гаранией

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

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

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

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

 

 

 

 

 

 

 

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

 

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

 

на тему: «Автоматизований аналіз злочинності»

 

 

 

 

 

 

 

 

 

 

 

Харків р.

Зміст

 

Вступ

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

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

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

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

2. Алгоритми

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

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

Висновок

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

 

Вступ

 

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

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

 

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

 

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

 

Розробити програму-«Аналізатор злочинності в регіоні» для збереження та перегляду всієї інформації з даної теми.

üВведення і збереження інформації:

oНазва області

oКількість вбивств

oКількість зґвалтувань;

oКількість державних зрад.

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

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

oКількість вбивств

oКількість зґвалтувань;

oКількість державних зрад.

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

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

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

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

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

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

 

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

 

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

А={А1 ,А2 ,…,Аі}, де і=1..n, Аі - кожний окремий злочин.

В={В1 ,В2 ,…,Ві}, де і=1..n, Ві - певна область

Таким чином маємо матрицю С=||Cij|| - вся сукупність відомостей про злочини.

Результат:

Множина Рij, яка формуються з вхідних даних а саме множини Сij

D={D1 ,D2 ,…,Dі} Dі =∑ Аі з кожного Ві

 

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

 

O - структура для збереження інформації

·No - назва певної області

·U - вбивства

·Y - зґвалтування

·K - крадіжок

·S - зради відчизні

Lis - процедура яка вконує аналіз та виводить його на екран

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

strila - управління курсором для вибору пункту меню

tread - малює рамочку

vx - занесення до файлу відомостей які вніс користувач

st - для видалення файлу

 

2. Алгоритми

 

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

 

uses crt,dos;

type o=record

no:string[10];

u,y,k,s:integer;

end;

var st1,st2,st3,st4:string;

q,v:byte;

z:char;

f:file of o; pe:o;

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

procedure ramo4ka (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 po4atik(st1,st2,st3,st4:string);

begin

window(1,1,40,25);

textbackground(3);

clrscr;

window (2,10,39,14);

textbackground(4);

clrscr;

gotoxy(1,4);

write(st1,st2,st3,st4);

end;

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

procedure strila(x,y:byte);

begin

gotoxy(x,y);

textbackground(0);

textcolor(14);

write(' | ');

gotoxy(x,y+1);

write('\|/');

gotoxy(x,y+2);

write(' " ')

end;

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

procedure tread (var a:char;var b:byte);

begin

b:=0;

a:=readkey;

if a=#0 then

b:=ord(readkey);

end;

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

var i,c:integer;

begin

textcolor(1);

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

var i,n:integer;

begin

window(1,1,40,25);

pamka(1,1,39,25);

window(2,2,38,24);

textbackground(2);

clrscr;

textcolor(0);

write('vvedi kol-vo oblastey- ');readln(n);

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

rewrite(f);

for i:=1 to n do

begin

seek(f,filesize(f));

clrscr;

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

write('vvedi nasvanie obl.- '); readln(pe.no);

write('vvedi kol-vo ubiystv- '); readln(pe.u);

write('vvedi kol-vo iznas. - '); readln(pe.y);

write('vvedi kol-vo kraj- '); readln(pe.k);

write('vvedi kol-vo samoybiystv- '); readln(pe.s);

write(f,pe);

end;

close(f);

end;

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

procedure lis;

var s,k,k1,s1,s2,s3,s4,min,s5,max,j,l,i:integer;

begin

window(1,1,40,25);

pamka(1,1,39,25);

window(2,2,38,24);

textbackground(2);

clrscr;

textcolor(0);

if fsearch('ret','d:\')='' then

begin

textcolor(4);

writeln('FAil ne naiden');

end

else

begin

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

reset(f);

s:=0; s1:=0;s2:=0;s3:=0;s4:=0; min:=9999;max:=-9999;j:=0;l:=0;

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

begin

s5:=0;

seek(f,i);

read(f,pe);

s5:=pe.u+pe.y+pe.k+pe.s;

if 5<min then

begin

min:=s5;j:=i;

end;

if s5>max then

begin

max:=s5;l:=i;

end;

s:=s+pe.u+pe.y+pe.k+pe.s;

s1:=s1+pe.u;

s2:=s2+pe.y;

s3:=s3+pe.k;

s4:=s4+pe.s;

end;

seek(f,j);

read(f,pe);

writeln('oblast-',pe.no,' imeet samiy nizkiy ur.prest');

seek(f,l);

read(f,pe);

writeln('oblast-',pe.no,' imeet samiy visokiy ur.prest');

writeln('obsh. kol prest - ',s);

writeln('obsh.kol ubiystv- ',s1);

writeln('obsh.kol iznas.- ',s2);

writeln('obsh.kol kraj- ',s3);

writeln('obsh.kol samoub.- ',s4);

close(f);

end;

readln;

end;

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

procedure st;

var v:char;h:byte;

begin

window(1,1,40,25);

pamka(1,1,39,25);

window(2,2,38,24);

textbackground(2);

clrscr;

textcolor(0);

if fsearch('ret','d:\')='' then

begin

textcolor(4);

writeln('FAil ne naiden');

end

else

begin

tread(v,h);

if v=#13 then

begin

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

erase(f);

write('STERTO');

end;

end;

readln;

end;

{==================}

begin

st1:='Informaciya';

st2:=' prosmotr';

st3:=' udalenie';

st4:=' Vihod';

po4atik(st1,st2,st3,st4);

strila(4,1);

q:=1;

repeat

newreadkey(z,v);

case v of

75:q:=q-1;

77:q:=q+1;

end;

case q of

0:q:=4;

5:q:=1;

Похожие работы

1 2 >