База даних по приватних підприємствах регіону

Міністерство внутрішніх справУкраїни Харківський національний університет внутрішніх справ Навчально-науковийінститут менеджменту, соціальних та інформаційних технологій  Кафедра інформаційнихсистем і технологій в діяльності ОВС
Курсова робота
з дисципліни «Основипрограмування та алгоритмічні мови»
на тему: «База даних поприватних підприємствах регіону»
Харків

Зміст
Вступ
1. Основна частина
1.1 Неформальна постановка задачі
1.2 Формальна постановка задачі
1.3 Структура зберігаючихданих:
2. Алгоритми
2.1 Алгоритм основної програми
2.1 Алгоритм процедури Is
3. Вихідний код програми
Висновок
Список використаної літератури
Вступ
Все більше ібільше в регіонах реєструється приватних підприємців. Таким чином для обробкиінформації яка надана по приватним підприємствам заносять до бази даних. Дляполегшення цього процесу потрібно створити спеціалізовану програму, яка буду зпростим, доступним інтерфейсом, але в той же час вона виконуватиме всіпокладені на неї сподівання.
Інформатизаціясуспільства значним чином полегшила обробку інформації. Я вибрав мовупрограмування ТурбоПаскаль, з метоюзакріплення своїх навиків з програмування.
1. Основна частина 1.1 Неформальна постановка задачі
Розробити програму-«приватні підприємства регіону», дляреєстрації та автоматизованої обробки відомостей про підприємців в певномурегіоні.
/>        Занесеннядо бази даних (спеціальний файл) всіх відомостей про приватне підприємство:
o    ФІОвласника підприємства;
o    Назваприватного підприємства;
o    Виддіяльності підприємства;
o    Адресареєстрації;
o    Номер телефону.
/>        Можливістьвидалення відомостей
/>        Організаціяпошуку за критеріями:
o    ФІОвласника;
o    Назваприватного підприємства;
o    Виддіяльності підприємства;
o    Адресареєстрації;
o    Номертелефону.
/>        Можливістьперегляду всіх існуючих відомостей;
/>        Зручнийінтерфейс для користувача;
/>        Вскладних випадках створення підказок для користувача;
/>        Швидкістьта простота роботи в даній програмі;
1.2 Формальна постановка задачі
Вихідні дані:
Нехай П={П1, П2,…, Пi}, де ( i=1, 2, …,N ) – множина підприємств.
Рiє Пi – ПІБ власникаприватного підприємстваFiє Пi – адреса підприємстваDiє Пi – ріддіяльності підприємстваHiє Пi – назва підприємстваLiє Пi – номер телефону
Таким чином отримуємо нову сукупність Пij – яка більшрозширена в плані інформації про підприємства
Результат:
Множина Zj, яка формуються з вхіднихданих а саме множини Пij.
Таким чиноммножина Zjє підмножиною Пij/> 1.3 Структура зберігаючих даних
Tyr – запис, якийприймає на себе відомості та потім зберігається в файл.
ü  Naz –поле куди заноситься назва підприємства
ü  Vd – полекуди заноситься вид діяльності підприємства
ü  Reg –поле куди заноситься інформація про адресу підприємства
ü  Vl – ПІБвласника приватного підприємства
ü  Nt – полекуди заноситься телефон підприємства
F – типізованийфайл
Kl – процедураяка малює рамочку
Rrr – процедураяка вимальовує меню без управляючої частини
Into – процедурадля збереження відомостей, які ввів користувач, до файлу.
Is – процедураяка забезпечує виконання пошуку
Ud – процедурадля видалення
2. Алгоритми/>2.1 Алгоритм основної програми
/>

 
/>

2.1 Алгоритм процедури Is/>/> 

/>3. Вихідний код програми
uses crt,dos;
type tyr=record
 naz,vd,reg,vl,nt:string[15];
 end;
var f:file oftyr; pr:tyr;
{……………………………………}
procedure kl(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;
{————————}
procedurenewreadkey (var a:char;var b:byte);
begin
b:=0;
a:=readkey;
if a=#0 then
b:=ord(readkey);
end;
{——————}
procedurerrr(st1,st2,st3,st4:string);
begin
 window(1,1,40,25);
 textbackground(7);
 clrscr;
 kl(5,2,35,5,7,0);
 gotoxy(3,1);
 write(#181,st1,#198);
 kl(5,8,35,11,7,0);
 gotoxy(3,1);
 write(#181,st2,#198);
 kl(5,14,35,17,7,0);
 gotoxy(3,1);
 write(#181,st3,#198);
 kl(5,20,35,23,7,0);
 gotoxy(3,1);
 write(#181,st4,#198);
end;
{——————}
procedureprig(x,y,u,n:byte);
var i:byte;
begin
 textbackground(0);
 textcolor(u);
 gotoxy(x,y);
 for i:=1 to n do
 write(#176);
end;
procedure pamka(x1,y1,x2,y2:integer);
var i,c:integer;
begin
gotoxy(x1,y1);
write(#201);
for i:=1 tox2-x1-1 do
begin
gotoxy(x1+i,y1);
write(#205);
end;
gotoxy(x2,y1);
write(#187);
for i:=1 toy2-y1-1 do
begin
gotoxy(x2,y1+i);
write(#186);
end;
gotoxy(x2,y2);
write(#188);
for i:=1 to x2-x1-1do
begin
gotoxy(x2-i,y2);
write(#205);
end;
gotoxy(x1,y2);
write(#200);
for i:=1 toy2-y1-1 do
begin
gotoxy(x1,y1+i);
write(#186);
end;
end;
{…………………………………..}
 procedure into;
 var i,n:integer;
 begin
 window(1,1,40,25);
 textbackground(0);
 clrscr;
 textcolor(3);
 pamka(1,19,39,25);
 pamka(1,1,39,25);
 gotoxy(1,19);
 write(#204);
 gotoxy(39,19);
 write(#185);
 window(2,20,38,24);
 writeln(‘ ЯЯЯЯЯЬЬЯЯЬ ЫЯЯЯЫ Я ЬЬЬ ‘ );
 writeln(‘ ЬЯ Ы ЫЫЬЬЬЫ Ы ЯЬ Я ‘);
 writeln(‘ ЬЯ ЫЬЬЬЫ Ы Ы ЯЬ ‘);
 writeln(‘ ЯЬЬЬЬЬЫ Ы Ы Ы ЯЬЬЬЯ ‘);
 window(5,2,37,17);
 textcolor(7);
 write(‘vvedikolichestvo predpreatiy- ‘);readln(n);
 assign(f,’d:\bas.bas’);
 rewrite(f);
 clrscr;
 for i:=1 to n do
 begin
 seek(f,filesize(f));
 clrscr;
 with pr do
 begin
 write(‘vvedinasvanie predpreyatia-‘);readln(naz);
 write(‘vvedi viddeyatelnosti predpreyatia’);readln(vd);
 write(‘vvediregion v kotorom zareg.-‘);readln(reg);
 write(‘vvedivladelcha predpriyatia-‘);readln(vl);
 write(‘vvedinomer telefona predpreyatia’);readln(nt);
 end;
 write(f,pr) ;
 end;
 close(f);
 end;
{……………………………}
procedure is;
vars:string;i:integer;
begin
 window(1,1,80,25);
 textbackground(0);
 clrscr;
 ifFSearch(‘bas.bas’,’d:\’)=” then
 begin
 textbackground(0);
 clrscr;
 textcolor(132);
 writeln(‘FAIL NENAYDEN’);
 readln;
 end
 else
 begin
textcolor(7);
 pamka(1,19,39,25);
 pamka(1,1,39,25);
 gotoxy(1,19);
 write(#204);
 gotoxy(39,19);
 write(#185);
 window(2,20,38,24);
 writeln(‘ ЫЯЯЯЫЫЯЯЯЯЫ Я ЬЬЬ Ы ЬЯ ‘);
 writeln(‘ ЫЬЬЬЫЫ Ы Ы ЯЬ Я ЫЬЯ ‘);
 writeln(‘ Ы Ы ЫЫ ЯЬ ЫЯЬ ‘);
 writeln(‘ Ы ЫЬЬЬЬЫЫ ЯЬЬЬЯ Ы ЯЬ ‘);
 window(5,2,37,17);
 textcolor(7);
 write(‘vvedislovo dla poiska-‘);readln(s);
 assign(f,’d:\bas.bas’);
 reset(f);
 for i:=0 tofilesize(f)-1 do
 begin
 seek(f,i);
 read(f,pr);
 with pr do
 begin
 if (s=naz) or(s=vd) or (s=nt) or (s=reg) or (s=vl) then
 begin
 writeln(‘zapis’,i+1);
 writeln(‘nasvanie predpreyatia-‘,naz);
 writeln(‘ viddeyatelnosti predpreyatia-‘,vd);
 writeln(‘ regionv kotorom zareg.-‘,reg);
 writeln(‘vladelcha predpriyatia-‘,vl);
 writeln(‘ nomertelefona predpreyatia-‘,nt);
 end
 else
 writeln(‘poetomu zaprocu nichego ne naydeno’);
 end;
 end;
 readln;
end;
end;
{…………………………}
 procedure ud;
 begin
 window(1,1,40,25);
 clrscr;
 ifFSearch(‘bas.bas’,’d:\’)=” then
 begin
 textbackground(0);
 clrscr;
 textcolor(132);
 writeln(‘FAIL NENAYDEN’);
 readln;
 end
 else
 begin
 pamka(1,1,39,25);
 window(2,2,38,24);
 writeln(‘Nagmina «enter» dla udalenia’);
 if readkey=#13then
 begin
 assign(f,’d:\bas.bas’);
 erase(f);
 writeln(‘failudalen’);
 end;
 end;
 readln;
 end;
{:::::::::::::::::::::::::::::::::::::::::::::}
varst1,st2,st3,st4:string;
 e:char;d,p:byte;
begin
textmode(c40);
{into;
{is;
ud;
readln;}
repeat
window(1,1,40,25);
textbackground(7);
clrscr;
st1:=’Zapis’;
st2:=’Nayti’;
st3:=’Steret’;
st4:=’Vixod’;
rrr(st1,st2,st3,st4);
window(1,1,40,25);
prig(6,3,14,29);
p:=1;
repeat
newreadkey(e,d);
if d=80 then
 p:=p+1;
if d=72 then
 p:=p-1;
if p=5 then
 p:=1;
if p=0 then
 p:=4;
case p of
 1: begin
 rrr(st1,st2,st3,st4);
 window(1,1,40,25);
 prig(6,3,14,29);
 end;
 2: begin
 rrr(st1,st2,st3,st4);
 window(1,1,40,25);
 prig(6,9,14,29);
 end;
 3: begin
 rrr(st1,st2,st3,st4);
 window(1,1,40,25);
 prig(6,15,14,29);
 end;
 4: begin
 rrr(st1,st2,st3,st4);
 window(1,1,40,25);
 prig(6,21,14,29);
 end;
end;
until e=#13;
case p of
1:into;
2:is;
3:ud;
end;
until p=4;end.
Висновок
В даній курсовійроботі були поставлені такі задачі: поглибити свої знання в алгоритмічнихмовах, та вдосконалити програмування на мові Паскаль. Та створити кориснийпродукт. Була створена програма, якою я виконую обидві задачі які ставилися напочатку.
В даній роботібуло створено досить велику кількість процедур, які можливо використати і вінших програмних проектах, були використані різні типи даних, а також булизастосовані процедури та функції які були створені раніше, ці процедури тафункції я брав з модулів CRT та DOS
Список використаної літератури
1.        Струков В.М.Основы алгоритмизации и программирования.Часть 2. Учебное пособие. – Харьков: Изд. Нац. ун-та внутр.дел,2003. – 188 с.
2.        СердюченкоВ.Я. Розробка алгоритмів та програмування на мові Turbo Pascal. – X.,1995.
3.        НемнюгинС.А. Turbo Pascal. – СПб.: Питер, 2002. – 496 с.: ил.