46719 (Автоматизований аналіз злочинності по областям)

2016-07-29СтудИзба

Описание файла

Документ из архива "Автоматизований аналіз злочинності по областям", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "контрольные работы и аттестации", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "46719"

Текст из документа "46719"

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


Вступ

Злочинність все більше розвивається в сучасному світі. І тому необхідно вести строгий облік всієї злочинності. Розробити програму яка буди здійснювати автоматизований аналіз злочинності по певній області. Так як ця задача не вимагає великих та жорстких методів написання, я оберу мову програмування Turbo Pascal.

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


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


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

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

  • Введення і збереження інформації до файлу:

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

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

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

    • Кількість крадіжок

    • Кількість пограбувань.

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

  • Аналіз

    • Область з най білими показниками злочинності

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

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

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

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

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

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

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

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

Позначимо сукупність всіх даних, які будуть заноситись до бази даних через множину А, таким чином А={А1,А2,…, Аі}, де і=1..n, Аі – певна область.

Кожен область складається з певного виду злочину, отже маємо Аі={Аі1,Аі2,…, Аіj}, j=1..4.

Таким чином ми маємо матрицю всіх відомостей які зберігаються в базі даних, та заносяться користувачем.

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

Математична модель: з матриці вибираються Аі з найбільшими показниками Аj.

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

Nb – структура для введення та зберігання інформації що вводить користувач.

  • Nas – назва області

  • Ub – поле для кількості вбивств в конкретній область

  • Iz – поле для кількості зґвалтувань в конкретній області

  • Kr – поле для кількості крадіжок в конкретній області

  • Pas – поле для кількості грабіжей в конкретній області

ramo4ka – процедура яка малює рамку

izi – процедура яка виводить в певних координатах певні відомасті

ram – процедура яка малює рамочку іншого типу

zao – процедура для введення та зберігання до файлу відомостей які вводить користувач

anal – процедура яка здійснює автоматизований аналіз злочинності

ual – процедура видалення всієї бази


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

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) – 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 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–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 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, оскільки я вважаю що вона найбільш підходить для реалізації цієї задачі



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

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

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

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

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5167
Авторов
на СтудИзбе
437
Средний доход
с одного платного файла
Обучение Подробнее