Міністерство внутрішніх справ України Харківський національний університет внутрішніх справ Навчально-науковий інститут менеджменту, соціальних та інформаційних технологій Кафедра інформаційних систем і технологій в діяльності ОВС
Курсова робота
з дисципліни «Основи програмування та алгоритмічні мови»
на тему: «Довідкова система по кримінальному праву»
Харків
Зміст
Вступ
1. Основна частина
1.1 Неформальна постановка задачі
1.2 Формальна постановка задачі
1.3 Структура зберігаючих даних:
2. Алгоритми
2.1 Алгоритм основної програми
3. Вихідний код програми
Висновок
Список використаної літератури
Вступ
Дуже велика кількість часу витрачається на пошук тієї чі іншої інформації. Довідкова система спрямована по зменшення витрат часу, фізичних втрат на пошук, та інших витрат на здобуття тієї чи іншої інформації. На сьогодні ця тема дуже актуальна і тому я вибрав саме її. Первинною задачею є створення програми «Довідник»
Я вибрав мову програмування Turbo Pascal, з метою закріплення своїх навиків з програмування та вона я найбільш оптимальною для швидкого вирішення задачі.
1. Основна частина 1.1 Неформальна постановка задачі
Розробити програму-«довідник» для збереження та перегляду всієї інформації що стосується термінології.
ü Введення і збереження інформації про нормативні документи стосовно кримінального права в типизованому файлі:
o термін
o його визначення
o дата заносу в базу
ü Можливість редагування даної бази
ü Організація пошуку за критеріями:
ü Можливість перегляду всіх існуючих документів
ü Можливість видалення всієї бази.
ü Зручний інтерфейс для користувача
ü Швидкість та простота роботи в даній програмі
1.2 Формальна постановка задачіВихідні дані:
Позначимо сукупність всіх даних, які будуть заноситись до бази даних через множину К, таким чином К={К1,К2,…,Кі}, де і=1..n, Кі – терміни з кримінального права.
Кожен документ складається з відомостей, що стосуються цього документу, отже маємо Кі={Кі1,Кі2,…,Кіj}, j=1..4.
Таким чином ми маємо матрицю всіх відомостей які зберігаються в базі даних, та заносяться користувачем.
Результат:
Множина Рij, яка формуються з вхідних даних а саме множини Аij Шляхом пошуку відповідності О- критерій пошуку терміну.
1.3 Структура зберігаючих данихR – запис для введення та зберігання інформації від користувача
· Z – поле для введення терміну
· S – його визначення
· Datе – поле для введення дати внесення
f: file of r – перемінна для занесення запису до файлу
pol – процедура для занесення до фолу відомостей
ramo4ka – для виведення на екран рамки
menu_1 – процедура яка виводить на екран першу половину меню
menu_2 - процедура яка виводить на екран другу половину меню
del – для видалення бази
dov – для перегляду всіх існуючих термінів
2. Алгоритми 2.1 Алгоритм основної програми
3. Вихідний код програми
uses CRT,dos;
type r=record
z:string[15];
s:string;
end;
var s1,s2,s3,s4:string;
l,i:byte;
h:char;
f: file of r;d:r;
{------------}
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 menu_1(s1,s2,s3,s4:string;c1,c2,c3,c4:byte);
begin
window(1,1,40,25);
textbackground(0);
textcolor(c1);
ramo4ka(4,8,18,11,0,c1);
gotoxy(4,2);
write(s1);
textcolor(c2);
ramo4ka(4,12,18,15,0,c2);
gotoxy(4,2);
write(s2);
textcolor(c3);
ramo4ka(4,16,18,19,0,c3);
gotoxy(4,2);
write(s3);
textcolor(c4);
ramo4ka(4,20,18,23,0,c4);
gotoxy(4,2);
write(s4);
end;
procedure menu_2(i,h1,h2,h3,h4,c:byte;s:string);
var a,b:byte;
begin
case i of
1: begin
ramo4ka(4+h1,8,18+h1,11,0,c);
gotoxy(4,2);
write(s)
end;
2: begin
ramo4ka(4+h2,12,18+h2,15,0,c);
gotoxy(4,2);
write(s);
end;
3: begin
ramo4ka(4+h3,16,18+h3,19,0,c);
gotoxy(4,2);
write(s);
end;
4: begin
ramo4ka(4+h4,20,18+h4,23,0,c);
gotoxy(4,2);
write(s);
end;
end;
end;
{------------------}
procedure pol;
var i,n:integer;
begin
assign(f,'d:\kil.kil');
window(1,1,40,25);
rewrite(f);
textbackground(14);
clrscr;
window(4,3,37,22);
textbackground(9);
clrscr;
write('vvedi rasmer basi- '); readln(n);
for i:=1 to n do
begin
clrscr;
write('vvedi pravovoy termin- '); readln(d.z);
writeln('vvedi ego znahenie:');readln(d.s);
seek(f,filesize(f));write(f,d);
end;
close(f);
end;
{.................................}
procedure del;
var c:char;
begin
window(1,1,40,25);
textbackground(14);
clrscr;
window(4,3,37,22);
textbackground(9);
clrscr;
if fsearch('kil.kil','d:\')='' then
begin
textcolor(4);
writeln('faila net');
end
else
begin
write('Udalit fail-Y/N ');readln(c);
if c='y' then
begin
assign(f,'d:\kil.kil'); erase(f);
writeln('Udalen');
end;
end;
readln;
end;
{............................}
procedure dov;
var i:integer;b:string;
begin
window(1,1,40,25);
textbackground(14);
clrscr;
window(4,3,37,22);
textbackground(9);
clrscr;
if fsearch('kil.kil','d:\')='' then
begin
textcolor(4);
writeln('faila net');
end
else
begin
clrscr;
assign(f,'d:\kil.kil');
reset(f);
for i:=0 to filesize(f)-1 do
begin
seek(f,i);read(f,d);
writeln(i+1,'.', d.z);
end;
write('vvedi termin- ');read(b);
clrscr;
for i:=0 to filesize(f)-1 do
begin
seek(f,i);read(f,d);
if b=d.z then
begin
writeln(d.z,':'); writeln;
writeln(d.s);
end;
end;
close(f);
end;
readln;
end;
{==================}
begin
textmode(co40);
window(1,1,40,25);
clrscr;
s1:='Termini';
s2:='Prosmotr';
s3:='Udalenie';
s4:='Vihod';
menu_1(s1,s2,s3,s4,0,15,15,15);
i:=1;
menu_2(i,5,0,0,0,15,s1);
repeat
newreadkey(h,l);
case l of
80:i:=i+1;
72:i:=i-1;
end;
case i of
0:i:=4;
5:i:=1;
end;
case i of
1:begin
if h=#13 then
pol;
window(1,1,40,25);
textbackground(0);
clrscr;
menu_1(s1,s2,s3,s4,0,15,15,15);
menu_2(i,5,0,0,0,15,s1);
end;
2:begin
if h=#13 then
dov;
window(1,1,40,25);
textbackground(0);
clrscr;
menu_1(s1,s2,s3,s4,15,0,15,15);
menu_2(i,0,5,0,0,15,s2);
end;
3:begin
if h=#13 then
del;
window(1,1,40,25);
textbackground(0);
clrscr;
menu_1(s1,s2,s3,s4,15,15,0,15);
menu_2(i,0,0,5,0,15,s3);
end;
4:begin
if h=#13 then
halt;
window(1,1,40,25);
textbackground(0);
clrscr;
menu_1(s1,s2,s3,s4,15,15,15,0);
menu_2(i,0,0,0,5,15,s4);
end;
end;
until h=#27;
end.
Висновок
В цій роботі я створив програму «Довідник», яка полегшує обробітку інформації яка вводиться користувачем. В даній роботі були використані власні процедури та запозичені. Булу підключено два модулі СRT, якій відповідає за графіку та DOS, який працює з файлами. Вся інформація яка водиться користувачем зберігається в файлі, та при необхідності може бути переглянута.
Мовою програмування я обрав Turbo Pascal, оскільки він є найбільш оптимальним для виконання поставленої задачі.
Список використаної літератури
1. Струков В.М. Основы алгоритмизации и программирования. Часть 2. Учебное пособие. – Харьков: Изд. Нац. ун-та внутр.дел,2003. – 188 с.
2. Сердюченко В.Я. Розробка алгоритмів та програмування на мові Turbo Pascal. – X.,1995.
3. Немнюгин С.А. Turbo Pascal. – СПб.: Питер, 2002. – 496 с.: ил.
Похожие работы
... . Дійсною ж причиною загибелі потерпілого було порушення правил дорожнього руху, допущене водієм вантажного автомобіля, що і повинно знайти відображення в кваліфікації дій винного. Питання про причинний зв'язок у кримінальному праві, крім того, завжди вирішується з урахуванням категорій можливості і дійсності. Причиною шкідливого наслідку визнається тільки таке діяння, яке містило в собі реальну ...
... та для навчального процесу, зокрема, при вивченні кримінального права України, мають практично-прикладне значення такі, отримані в дисертації результати: 1. Виділено кримінально-правовий та психологічний аспекти стану сильного душевного хвилювання. Кримінально-правовими ознаками аналізованого поняття є те, що: станом сильного душевного хвилювання може вважатися лише емоційний стан, який ...
... своїх спеціальних знань й навичок і результат його праці не має доказового значення, а результат праці експерта є процесуальним актом (заключення експерта), який у кримінальному судочинстві згідно ч. 1 ст. 67 КПК є джерелом доказів. Враховуючи те, що спеціаліст завжди взаємодіє зі слідчим, то експерт у кримінальному процесі є самостійним учасником. 2) Спільне у правово
... тільки судом слугує захисту прав та свобод громадян, в тому числі тих, яким призначається покарання за скоєний злочин. До загальних підстав призначення покарання мають пряме та безпосереднє відношення принципи кримінальної відповідальності. В числі цих принципів в КК названі: законність, рівність громадян перед законом, наявність вини, справедливість, гуманізм. Суд, призначаючи особі, яка ...
0 комментариев