База даних по приватним підприємствам регіону
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
Міністерство внутрішніх справ України
Харківський національний університет внутрішніх справ
Навчально-науковий інститут менеджменту, соціальних та інформаційних технологій
Кафедра інформаційних систем і технологій в діяльності ОВС
Курсова робота
з дисципліни Основи програмування та алгоритмічні мови
на тему: База даних по приватним підприємствам регіону
Харків р.
Зміст
Вступ
1. Основна частина
1.1 Неформальна постановка задачі
1.2 Формальна постановка задачі
1.3 Структура зберігаючих даних
2. Алгоритми
2.1 Алгоритм основної програми
3. Вихідний код програми
Висновок
Список використаної літератури
Вступ
Створити програму по приватним підприємствам району. Підприємствам для повного контролю протікання в них різних процесів, про них необхідно мати всю інформація, як то кажуть під рукою. Програма яка буди працювати в даній сфері повинна відповідати всім вимогам які будуть описані нижче.
Я вибрав мову програмування Turbo Pascal, з метою закріплення своїх навиків з програмування.
1. Основна частина
1.1 Неформальна постановка задачі
Розробити програму Приватка для збереження та перегляду всієї інформації що приватних підприємств.
- Введення і збереження в файл:
- Назва підприємства
- Адреса підприємства
- Власник підприємства;
- Можливість редагування даної бази
- Організація пошуку за критеріями:
- Назва підприємства
- Адреса підприємства
- Власник підприємства;
- Можливість перегляду всіх існуючих документів
- Перегляд скороченого варіанту бази
- Перегляд повного варіанту даних, які занесені до бази
- Можливість видалення всієї бази.
- Зручний інтерфейс для користувача
- Швидкість та простота роботи в даній програмі
1.2 Формальна постановка задачі
Вихідні дані:
Нехай B={B1,B2,…,Bi}, де ( i=1, 2, ..., N ) множина підприємств.
Ri є Bi ПІБ власника приватного підприємства
Di є Bi адреса підприємства
Oi є Bi назва підприємства
Таким чином отримуємо нову сукупність Bij яка більш розширена в плані інформації про підприємства
Результат:
Множина Kj, яка формуються з вхідних даних а саме множини Bij.
Математична модель:
Таким чином множина Kj є підмножиною Bij
1.3 Структура зберігаючих даних
P Запис для занесення в нього інформації а потім до файлу і навпаки
- Na поле для назви підприємства
- Re поле для адреси
- Vl поле для ПІБ власника
Pamka малює рамку
Voz відповідае за введення та збереження інформації
Viv пошук в базі даних
Dal для видалення
Newreadkey розширений код клавіши
Rrr допоміжна для рамки
Prig меню програми
2. Алгоритми
2.1 Алгоритм основної програми
3. Вихідний код програми
uses crt ,dos;
type p=record
na,re,
string[15];
end;
var f: file of p;pr:p;
st1,st2,st3,st4:string;
e:char;d,pu:byte;
{--------------}
procedure pamka (x1,y1,x2,y2:integer);
var i,c:integer;
begin
textcolor(1);
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 voz;
var i,n:integer;
begin
window(1,1,40,25);
textbackground(3);
clrscr;
pamka(1,23,39,25);
gotoxy(13,24);
write(ZAPOLNENIE);
window(4,1,37,22);
write(Vvedi kol-vo predpreyatiy- );readln(n);
assign(f,D:\reg);
rewrite(f);
for i:=1 to n do
begin
clrscr;
seek(f,filesize(f));
writeln(Predpreyatie#,i);
write(Vvedi nas.predpreyatia- );readln(pr.na);
write(Vvedi reg. v kotor. rasp. predpr-);readln(pr.re);
write(Vvedi vladelca predpr.- );readln(pr.vl);
write(f,pr);
end;
close(f);
end;
{...................}
procedure viv;
var i:integer;
begin
window(1,1,40,25);
textbackground(3);
clrscr;
pamka(1,23,39,25);
gotoxy(13,24);
write(prosmotr);
window(4,1,37,22);
if fsearch(reg,d:\)= then
begin
textcolor(132);
writeln(FAIL Ne NAYDEN);
end
else
begin
assign(f,d:\reg);
reset(f);
for i:=0 to filesize(f)-1 do
begin
seek(f,i); read(f,pr);
writeln(nasv. predpr.- ,pr.na);
writeln(region raspol.- ,pr.re);
writeln(Vladeletc- ,pr.vl);
writeln;
end;
close(f);
end;
readln;
end;
{.................}
procedure dal;
begin
window(1,1,40,25);
textbackground(3);
clrscr;
pamka(1,23,39,25);
gotoxy(13,24);
write(UDALENIE);
window(4,1,37,22);
if fsearch(reg,d:\)= then
begin
textcolor(132);
writeln(FAIL Ne NAYDEN);
end
else
begin
Writeln(Fail udalen );
assign(f,d:\reg);
erase(f);
end;
end;
{-------------------}
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;
{------------------------}
procedure newreadkey (var a:char;var b:byte);
begin
b:=0;
a:=readkey;
if a=#0 then
b:=ord(readkey);
end;
<