Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Автоматизований аналіз злочинності по областям
Злочинність все більше розвивається в сучасному світі. І тому необхідно вести строгий облік всієї злочинності. Розробити програму яка буди здійснювати автоматизований аналіз злочинності по певній області. Так як ця задача не вимагає великих та жорстких методів написання, я оберу мову програмування Turbo Pascal.
Я вибрав мову програмування Turbo Pascal, з метою закріплення своїх навиків з програмування.
Розробити програму «Злочин» для збереження та перегляду, а також автоматичного аналізу всієї інформації.
Вихідні дані:
Позначимо сукупність всіх даних, які будуть заноситись до бази даних через множину А, таким чином А={А1,А2,…, Аі}, де і=1..n, Аі певна область.
Кожен область складається з певного виду злочину, отже маємо Аі={Аі1,Аі2,…, Аіj}, j=1..4.
Таким чином ми маємо матрицю всіх відомостей які зберігаються в базі даних, та заносяться користувачем.
Результат: множина Рij, яка формуються з вхідних даних а саме множини Аij.
Математична модель: з матриці вибираються Аі з найбільшими показниками Аj.
Nb структура для введення та зберігання інформації що вводить користувач.
ramo4ka процедура яка малює рамку
izi процедура яка виводить в певних координатах певні відомасті
ram процедура яка малює рамочку іншого типу
zao процедура для введення та зберігання до файлу відомостей які вводить користувач
anal процедура яка здійснює автоматизований аналіз злочинності
ual процедура видалення всієї бази
uses crt, dos;
type nb=record
nas:string[10];
ub, iz, kr, pas:integer;
end; {avt al zl po abl}
var f:file of nb; obl:nb;
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) do
begin
write ('.');
end;
write ('.');
for i:=2 to (y2-y1) do
begin
gotoxy (1, i);
write (':');
gotoxy (x2-x1+1, i);
write (':');
end;
write (':');
for i:=1 to (x2-x1) 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 izi (x, y:byte; s1, s2, s3, s4:string);
begin
gotoxy (x, y);
write(s1);
gotoxy (x+15, y+2);
write(s2);
gotoxy (x, y+4);
write(s3);
gotoxy (x+15, y+6);
write(s4);
end;
{}
procedure ram (x, y, x1, y1, a, b:byte);
begin
ramo4ka (x, y, x1, y1, a, b);
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 do
begin
gotoxy (x1+i, y1);
write(#205);
end;
gotoxy (x2, y1);
write(#187);
for i:=1 to y2-y1 do
begin
gotoxy (x2, y1+i);
write(#186);
end;
gotoxy (x2, y2);
write(#188);
for i:=1 to x2-x1 do
begin
gotoxy (x2-i, y2);
write(#205);
end;
gotoxy (x1, y2);
write(#200);
for i:=1 to y2-y1 do
begin
gotoxy (x1, y1+i);
write(#186);
end;
end;
{……………….}
procedure zao;
var i, n:integer;
begin
window (1,1,40,25);
textbackground(1);
clrscr;
pamka (6,6,34,18);
window (7,7,33,17);
textbackground(14);
clrscr;
write ('Vvedite kol-vo oblastey '); readln(n);
assign (f, 'c:\te.j');
rewrite(f);
for i:=1 to n do
begin
clrscr;
seek (f, filesize(f));
with obl do
begin
write ('vvedi oblast:'); readln(nas);
write ('Vvedi kol-vo ubiystv: '); readln(ub);
write ('Vvedi kol-vo iznasilovaniy: '); readln(iz);
write ('vvedi kol-vo kraj: '); readln(kr);
write ('vvedi kol-vo rasboyev: '); readln(pas);
end;
write (f, obl);
end;
close(f);
end;
{…………………………….}
procedure anal;
var k, i, j:integer;
begin
if FSearch ('te.j', 'c:\')='' then
begin
window (1,1,40,25);
textbackground(1);
clrscr;
pamka (1,1,39,25);
window (2,2,38,24);
textcolor(132);
writeln ('FAILA NET'); readln;
end
else
begin
window (1,1,40,25);
textbackground(1);
clrscr;
pamka (1,1,39,25);
window (2,2,38,24);
writeln ('Dlya analiza nagmi «Enter» ');
readln; clrscr;
assign (f, 'c:\te.j');
reset(f);
k:=-9999;
j:=0;
for i:=0 to filesize(f) 1 do
begin
seek (f, i);
read (f, obl);
with obl do
begin
if ub>k then
begin
k:=ub;
j:=i;
end;
end;
end;
seek (f, j);
read (f, obl);
with obl do
begin
writeln ('sam. bolh. kol. ubiystv-', ub);
writeln ('v ', nas, ' oblasti');
writeln(#219);
end;
k:=-9999;
j:=0;
for i:=0 to filesize(f) 1 do
begin
seek (f, i);
read (f, obl);
with obl do
begin
if iz>k then
begin
k:=iz;
j:=i;
end;
end;
end;
seek (f, j);
read (f, obl);
with obl do
begin
writeln ('sam. bolh. kol. iznosilovaniy-', iz);
writeln ('v ', nas, ' oblasti');
writeln(#219);
end;
k:=-9999;
j:=0;
for i:=0 to filesize(f) 1 do
begin
seek (f, i);
read (f, obl);
with obl do
begin
if kr>k then
begin
k:=kr;
j:=i;
end;
end;
end;
seek (f, j);
read (f, obl);
with obl do
begin
writeln ('sam. bolh. kol. kraj-', kr);
writeln ('v ', nas, ' oblasti');
writeln(#219);
end;
k:=-9999;
j:=0;
for i:=0 to filesize(f) 1 do
begin
seek (f, i);
read (f, obl);
with obl do
begin
if pas>k then
begin
k:=pas;
j:=i;
end;
end;
end;
seek (f, j);
read (f, obl);
with obl do
begin
writeln ('sam. bolh. kol. rasboev-', pas);
writeln ('v ', nas, ' oblasti');
writeln(#219);
end;
for i:=1 to 37 do
begin
gotoxy (i, 13);
write(#196);
end;
readln;
close(f);
end;
end;
{…………………}
procedure ual;
begin
if FSearch ('te.j', 'c:\')='' then
begin
window (1,1,40,25);
textbackground(1);
clrscr;
pamka (1,1,39,25);
window (2,2,38,24);
textcolor(132);
writeln ('FAILA NET'); readln;
end
else
begin
window (1,1,40,25);
textbackground(1);
clrscr;
pamka (1,1,39,25);
window (2,2,38,24);
writeln ('Dlya udalenia nagmi «Enter» ');
readln;
assign (f, 'c:\te.j');
erase(f);
writeln('Udaleno');
readln;
end;
end;
{:}
var s1, s2, s3, s4, s5:string;
p:char; z, k:byte;
begin
textmode(C40);
repeat
window (1,1,40,25);
textbackground(1);
textcolor(7);
clrscr;
s1:='Vvod';
s2:='Analizirovat';
s3:='Udalit';
s4:='Vixod';
izi (10,7, s1, s2, s3, s4);
ram (9,6, length(s1)+10,9,1,14);
k:=1;
repeat
newreadkey (p, z);
if z=80 then
k:=k+1;
if z=72 then
k:=k-1;
if k=5 then
k:=4;
if k=0 then
k:=1;
if k=1 then
begin
ram (9,6, length(s1)+10,9,1,14);
ram (24,8, length(s1)+25,11,1,1);
end;
if k=2 then
begin
ram (9,6, length(s1)+10,9,1,1);
ram (24,8, length(s1)+25,11,1,14);
ram (9,10, length(s1)+10,13,1,1);
end;
if k=3 then
begin
ram (24,8, length(s1)+25,11,1,1);
ram (9,10, length(s1)+10,13,1,14);
ram (24,12, length(s1)+25,15,1,1);
end;
if k=4 then
begin
ram (9,10, length(s1)+10,13,1,1);
ram (24,12, length(s1)+25,15,1,14);
ram (9,14, length(s1)+10,17,1,1);
end;
until p=#13;
case k of
1:zao;
2:anal;
3:ual;
end;
until k=4;
end.
В даній курсовій роботі я програмував мовою Turbo Pascal. Практично реалізував всі ті знання які мені давалися в теоретичному виді. Само вдосконалив свої навички. Створив програму автоматизовано аналізує злочинність по областям. В даній роботі були використані як свої створені процедури так і запозичені. Було підключено два модулі, які додали до моєї програми гарний графічний інтерфейс, та можливість зберігати всі відомості в електронному вигляді в виді файлу.
Була вибрана мова Pascal, оскільки я вважаю що вона найбільш підходить для реалізації цієї задачі