Основные методы регулирования внешней торговли
Міністерство внутрішніх справ
України Харківський національний університет внутрішніх справ Навчально-науковий
інститут менеджменту, соціальних та інформаційних технологій Кафедра інформаційних
систем і технологій в діяльності ОВС
Курсова робота
з дисципліни «Основи
програмування та алгоритмічні мови»
на тему: «База даних по
приватних підприємствах регіону»
Харків
Зміст
Вступ
1.
Основна частина
1.1
Неформальна постановка задачі
1.2
Формальна постановка задачі
1.3 Структура зберігаючих даних:
2.
Алгоритми
2.1 Алгоритм основної
програми
2.1 Алгоритм процедури
Is
3. Вихідний код
програми
Висновок
Список
використаної літератури
Все більше і
більше в регіонах реєструється приватних підприємців. Таким чином для обробки
інформації яка надана по приватним підприємствам заносять до бази даних. Для
полегшення цього процесу потрібно створити спеціалізовану програму, яка буду з
простим, доступним інтерфейсом, але в той же час вона виконуватиме всі
покладені на неї сподівання.
Інформатизація
суспільства значним чином полегшила обробку інформації. Я вибрав мову
програмування Турбо
Паскаль, з метою
закріплення своїх навиків з програмування.
1.1 Неформальна постановка задачі
Розробити програму-«приватні підприємства регіону», для
реєстрації та автоматизованої обробки відомостей про підприємців в певному
регіоні.
Занесення
до бази даних (спеціальний файл) всіх відомостей про приватне підприємство:
o
ФІО
власника підприємства;
o
Назва
приватного підприємства;
o
Вид
діяльності підприємства;
o
Адреса
реєстрації;
o
Номер телефону.
Можливість
видалення відомостей
Організація
пошуку за критеріями:
o
ФІО
власника;
o
Назва
приватного підприємства;
o
Вид
діяльності підприємства;
o
Адреса
реєстрації;
o
Номер
телефону.
Можливість
перегляду всіх існуючих відомостей;
Зручний
інтерфейс для користувача;
В
складних випадках створення підказок для користувача;
Швидкість
та простота роботи в даній програмі;
Вихідні дані:
Нехай П={П1,П2,…,Пi}, де ( i=1, 2, ...,
N ) – множина підприємств.
Рi є Пi – ПІБ власника
приватного підприємства Fi є Пi – адреса підприємства
Di є Пi – рід
діяльності підприємства Hi є Пi – назва підприємства
L i є Пi – номер телефону
Таким чином отримуємо нову сукупність Пij – яка більш
розширена в плані інформації про підприємства
Результат:
Множина Zj, яка формуються з вхідних
даних а саме множини Пij.
Таким чином
множина Zj є підмножиною Пij
1.3 Структура зберігаючих даних
Tyr – запис, який
приймає на себе відомості та потім зберігається в файл.
ü
Naz –
поле куди заноситься назва підприємства
ü
Vd – поле
куди заноситься вид діяльності підприємства
ü
Reg –
поле куди заноситься інформація про адресу підприємства
ü
Vl – ПІБ
власника приватного підприємства
ü
Nt – поле
куди заноситься телефон підприємства
F – типізований
файл
Kl – процедура
яка малює рамочку
Rrr – процедура
яка вимальовує меню без управляючої частини
Into – процедура
для збереження відомостей, які ввів користувач, до файлу.
Is – процедура
яка забезпечує виконання пошуку
Ud – процедура
для видалення
2.1 Алгоритм процедури Is
3. Вихідний код програми
uses crt,dos;
type tyr=record
naz,vd,reg,vl,nt
:string[15];
end;
var f:file of
tyr; pr:tyr;
{..........................................}
procedure kl
(x1,y1,x2,y2,a,b:byte);
var i:integer;
begin
textbackground(a);
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
rrr(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;
{------------------}
procedure
prig(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 to
x2-x1-1 do
begin
gotoxy(x1+i,y1);
write(#205);
end;
gotoxy(x2,y1);
write(#187);
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 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('vvedi
kolichestvo 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('vvedi
nasvanie predpreyatia-');readln(naz);
write('vvedi vid
deyatelnosti predpreyatia');readln(vd);
write('vvedi
region v kotorom zareg.-');readln(reg);
write('vvedi
vladelcha predpriyatia-');readln(vl);
write('vvedi
nomer telefona predpreyatia');readln(nt);
end;
write(f,pr) ;
end;
close(f);
end;
{.................................}
procedure is;
var
s:string;i:integer;
begin
window(1,1,80,25);
textbackground(0);
clrscr;
if
FSearch('bas.bas','d:\')='' then
begin
textbackground(0);
textcolor(132);
writeln('FAIL NE
NAYDEN');
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('vvedi
slovo dla poiska-');readln(s);
assign(f,'d:\bas.bas');
reset(f);
for i:=0 to
filesize(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(' vid
deyatelnosti predpreyatia-',vd);
writeln(' region
v kotorom zareg.-',reg);
writeln('
vladelcha predpriyatia-',vl);
writeln(' nomer
telefona predpreyatia-',nt);
end
else
writeln('po
etomu zaprocu nichego ne naydeno');
end;
end;
readln;
end;
end;
{..............................}
procedure ud;
begin
window(1,1,40,25);
clrscr;
if
FSearch('bas.bas','d:\')='' then
begin
textbackground(0);
clrscr;
textcolor(132);
writeln('FAIL NE
NAYDEN');
readln;
end
else
begin
pamka(1,1,39,25);
window(2,2,38,24);
writeln('Nagmi
na "enter" dla udalenia');
if readkey=#13
then
begin
assign(f,'d:\bas.bas');
erase(f);
writeln('fail
udalen');
end;
end;
end;
{:::::::::::::::::::::::::::::::::::::::::::::}
var
st1,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 с.: ил.