Банк рефератов содержит более 364 тысяч рефератов, курсовых и дипломных работ, шпаргалок и докладов по различным дисциплинам: истории, психологии, экономике, менеджменту, философии, праву, экологии. А также изложения, сочинения по литературе, отчеты по практике, топики по английскому.
Полнотекстовый поиск
Всего работ:
364139
Теги названий
Разделы
Авиация и космонавтика (304)
Административное право (123)
Арбитражный процесс (23)
Архитектура (113)
Астрология (4)
Астрономия (4814)
Банковское дело (5227)
Безопасность жизнедеятельности (2616)
Биографии (3423)
Биология (4214)
Биология и химия (1518)
Биржевое дело (68)
Ботаника и сельское хоз-во (2836)
Бухгалтерский учет и аудит (8269)
Валютные отношения (50)
Ветеринария (50)
Военная кафедра (762)
ГДЗ (2)
География (5275)
Геодезия (30)
Геология (1222)
Геополитика (43)
Государство и право (20403)
Гражданское право и процесс (465)
Делопроизводство (19)
Деньги и кредит (108)
ЕГЭ (173)
Естествознание (96)
Журналистика (899)
ЗНО (54)
Зоология (34)
Издательское дело и полиграфия (476)
Инвестиции (106)
Иностранный язык (62791)
Информатика (3562)
Информатика, программирование (6444)
Исторические личности (2165)
История (21319)
История техники (766)
Кибернетика (64)
Коммуникации и связь (3145)
Компьютерные науки (60)
Косметология (17)
Краеведение и этнография (588)
Краткое содержание произведений (1000)
Криминалистика (106)
Криминология (48)
Криптология (3)
Кулинария (1167)
Культура и искусство (8485)
Культурология (537)
Литература : зарубежная (2044)
Литература и русский язык (11657)
Логика (532)
Логистика (21)
Маркетинг (7985)
Математика (3721)
Медицина, здоровье (10549)
Медицинские науки (88)
Международное публичное право (58)
Международное частное право (36)
Международные отношения (2257)
Менеджмент (12491)
Металлургия (91)
Москвоведение (797)
Музыка (1338)
Муниципальное право (24)
Налоги, налогообложение (214)
Наука и техника (1141)
Начертательная геометрия (3)
Оккультизм и уфология (8)
Остальные рефераты (21692)
Педагогика (7850)
Политология (3801)
Право (682)
Право, юриспруденция (2881)
Предпринимательство (475)
Прикладные науки (1)
Промышленность, производство (7100)
Психология (8692)
психология, педагогика (4121)
Радиоэлектроника (443)
Реклама (952)
Религия и мифология (2967)
Риторика (23)
Сексология (748)
Социология (4876)
Статистика (95)
Страхование (107)
Строительные науки (7)
Строительство (2004)
Схемотехника (15)
Таможенная система (663)
Теория государства и права (240)
Теория организации (39)
Теплотехника (25)
Технология (624)
Товароведение (16)
Транспорт (2652)
Трудовое право (136)
Туризм (90)
Уголовное право и процесс (406)
Управление (95)
Управленческие науки (24)
Физика (3462)
Физкультура и спорт (4482)
Философия (7216)
Финансовые науки (4592)
Финансы (5386)
Фотография (3)
Химия (2244)
Хозяйственное право (23)
Цифровые устройства (29)
Экологическое право (35)
Экология (4517)
Экономика (20644)
Экономико-математическое моделирование (666)
Экономическая география (119)
Экономическая теория (2573)
Этика (889)
Юриспруденция (288)
Языковедение (148)
Языкознание, филология (1140)

Курсовая работа: База данных "Сотрудники"

Название: База данных "Сотрудники"
Раздел: Рефераты по информатике, программированию
Тип: курсовая работа Добавлен 21:37:27 30 ноября 2009 Похожие работы
Просмотров: 84 Комментариев: 21 Оценило: 3 человек Средний балл: 5 Оценка: неизвестно     Скачать

Волжский университет имени В.Н.Татищева

Кафедра “Информатика и системы управления”

КУРСОВАЯ РАБОТА

по дисциплине : “Алгоритмизация и языки программирования”

Тема: База данных “Сотрудники”

Выполнил: студент гр. ИС-104

Григорьев А. В.

Преподаватель: Матвеева Н.В.

Тольятти 2006


Оглавление

1. Задание, на основе которого выполняется курсовая работа

2. Описание предметной области

3. Описание алгоритма задачи

Приложение 1 (листинг программы)

Приложение 2 (распечатка структуры базы данных)

Приложение 3 (распечатка результатов решения задачи по данным контрольного примера.)


1. Задание, на основе которого выполняется курсовая работа

Сотрудники

ОПИСАНИЕ

Программа должна использовать массив данных о сотрудниках небольшой фирмы (до 10 сотрудников). По каждому сотруднику вводится следующая информация:

¨ Фамилия, имя, отчество;

¨ Год и дата рождения;

¨ Пол;

¨ Стаж работы по специальности;

¨ Домашний адрес;

¨ Телефон;

¨ Должность;

¨ Оклад.

Информация о сотрудниках фирмы хранится в файле workers.dat.

Программа содержит следующие процедуры и функции:

• Новый сотрудник (предназначена для ввода данных о новом сотруднике и сохранении её в файле workers.dat);

• Уволить (удаляет информацию об уволенном сотруднике из массива данных);

• Просмотреть (позволяет просмотреть информацию о сотрудниках в алфавитном порядке);

• Упорядочить (упорядочивает список сотрудников в порядке убывания величины оклада);

• Найти (выводит на экран список сотрудников, работающих в указанной должности, например инженером).

В программе разрешается использовать дополнительные файлы, облегчающие просмотр и поиск требуемой информации о сотруднике.

ВХОД

Имя вызываемой процедуры должно вызываться из списка пунктов меню по номеру пункта.

Информация о новом сотруднике вводится в диалоге типа "Введите фамилию сотрудника:" и т.д.

Процедура Уволить запрашивает ввод фамилии И.О. увольняемого сотрудника.

Процедура Просмотреть должна ожидать нажатия "горячей" клавиши перехода к информации об очередном сотруднике в списке.

Процедура Найти запрашивает ввод должности по выбору пользователя.

ВЫХОД

Процедура Просмотреть по каждому нажатию "горячей" клавиши выводит полную информацию об очередном сотруднике из алфавитного списка.

Процедура Упорядочить выводит на экран список из фамилии И.О. и окладов сотрудников в порядке убывания величины оклада.

Процедура Найти выводит на экран список сотрудников, работающих в указанной должности.

ОШИБКИ

Ошибочный ввод информации, правильность которой компьютер в состоянии проверить, должен приводить к отказу от неправильного ввода с выходом на повторный ввод этой же информации.

2. Описание предметной области

В настоящее время появляется много новых маленьких и больших фирм и предприятий для регистрации и хранения данных о служащих фирмы или предприятия необходимо иметь специальную программу для того, чтобы упростить работу отдела кадров данного предприятия или фирмы.

Моя программа специально разработана для таких фирм и предприятий. Аналоговые программы стоят достаточно дорого. Моя же программа стоит намного дешевле и легко доступна для любого пользователя.

Моя программа хороша тем, что она легка в обращении небольших размеров и имеет все необходимое для регистрирования служащего. Этой программой может пользоваться даже человек, который не разу не седел за компьютером, достаточно только прочитать инструкцию(описание алгоритма задачи). Программист, который в дальнейшем будет обслуживать мою программу, для того чтобы разобраться в программе, нужно прочитать “описание алгоритма задачи”.

3. Описание алгоритма задачи

Для пользователя данной программы:

Чтобы запустить программу, нужно войти в файл 1- kyrs . exe , либо войти в файл 1- kyrs . pas и нажать в ней клавиши “Ctrl+F9”.

Программа выглядит как меню, состоящее из множества пунктов. По меню можно передвигаться с помощью клавиш “стрелка вниз” и “стрелка вверх”, выйти из меню можно с помощью нажатия клавиши “Esc” либо нажать пункт меню “Выход”. Вход в пункты меню происходит при нажатии клавиши “Enter”. При входе в какой либо пункт меню, по программе вызывается соответствующая процедура.

При входе в программу данные, хранящиеся в файле, автоматически открываются. Для того, чтобы уволить какого ни будь служащего, необходимо войти в пункт меню «Уволить сотрудника». При выходе из программы, данные автоматически сохраняются.

Для того чтобы ввести информацию о новом служащем необходимо войти в пункт меню “Новый сотрудник” и ввести информацию о новом сотруднике.

ФИО – может состоять не более чем из 60 символов.

Дата рождения – не более 15 символов.

Пол – пол писать полностью

Стаж работы – в годах.

Адрес – 30 символов.

Телефон – писать без тире.

Должность – 20 символов.

Размер оклада – неограниченное число.

В случае если что-либо было введено неправильно произойдёт выход из программы, с потерей всех несохранённых данных.

“Просмотреть список” – выводит список всех сотрудников в алфавитном порядке, после вывода каждого сотрудника нужно нажать клавишу “Enter”.

“Найти сотрудника” – Ищет служащего по введенной должности

“Уволить сотрудника” – стирает служащего по введенному регистрационному номеру и Ф.И.О.

“Очистить базу”- удаляет всех сотрудников

Примечание:

В программе имеются подсказки с правой стороны экрана.

Для программиста:

Программа состоит из множества процедур, которые вызываются из пунктов меню.

Пользовательские типы:

worker – тип динамической памяти типа base;

base – тип – запись(информация о сотрудниках);

sotrud – для работы с файлами типа base.

Используемые процедуры:

Punct1 – по этой процедуре осуществляется занесение служащего в файл.

Punkt3 - вывод списка в алфавитном порядке. Сортировка происходит по полю “fam”;

Punkt4 – по этой процедуре производится сортировка списка по величине оклада.

Punkt5 – выводит служащего с указанной должностью . Вводится нужная должность и при обходе списка происходит сравнение по полю “dolg” и вывод этой записи;

Punkt2 - удаление записи из списка (удаление происходит по введённому пользователем регистрационному номеру и Ф.И.О.);

Punkt0 - в этой процедуре происходит перезапись файла и обнуление односвязного списка.


Приложение 1

Листинг программы

program kursovaia;

uses crt;

const norm=$74; {цветневыделенногопункта}

norm1=$8;

sel=$31; {цвет выделенного пункта}

sel1=$15;

type

{-------------------описаниезаписи----------------}

Worker = ^base;

base=record

rnom:integer; {РЕГИСТРАЦИОННЫЙНОМЕР}

fam:string[20]; {ФАМИЛИЯ}

name:string[20]; {ИМЯ}

otch:string[20]; {ОТЧЕСТВО}

date:string[20]; {ДАТАРОЖДЕНИЯ}

pol:string[20]; {ПОЛ}

stag:integer; {СТАЖРАБОТЫ}

adress:string[30]; {ДОМАШНИЙАДРЕС}

tel:integer; {ТЕЛЕФОН}

dolg:string[20]; {ДОЛЖНОСТЬ}

oklad:integer; {ОКЛАД}

link:worker;

{--------------------------------------------------}

end;

var

Top,Cur,Next,Prev:Worker;

menu:array[1 .. 11] of string[50]; {Меню}

punkt:integer; {}

ch,cc:char; {Введенныйсимвол}

sotrud:file of base;

buf,buf1:base; {Двабуферобмена}

k,m:char;

p,n,x,y,i:integer; {}

Procedure FileToDin; {Изфайлавдинам. память}

begin

top:=nil;

Assign(sotrud,'sotrudn.dat');

{$I-}

Reset(sotrud);

If IOResult<>0 then

begin

rewrite(sotrud);

end

{$I+}

else

if filesize(sotrud)<>0 then

repeat

New(Cur);

Read(sotrud,Cur^);

Cur^.link:=Top;

Top:=Cur;

until eof(sotrud);

close(sotrud);

end;

Procedure DinToFile; {Издин. памятивфайл}

begin

If Top<>nil then

begin

Assign(sotrud,'sotrudn.dat');

Rewrite(sotrud);

Cur:=Top;

repeat

Write(sotrud,Cur^);

Cur:=Cur^.link;

until Cur=nil;

close(sotrud);

end;

end;

Procedure Menus; {выводменюнаэкран}

var

i:integer;

begin

clrscr;

gotoxy(28,wherey); writeln('**************************');

gotoxy(28,wherey); writeln('БАЗА ДАННЫХ ПО СОТРУДНИКАМ');

gotoxy(28,wherey); writeln('**************************');

for i:=p to n do begin

gotoxy(x,y+i-1);

write ( menu[i] );

end;

{textattr - предопределенная переменная, отвечающая за цвет фона и символов}

textattr:=sel;

gotoxy(x,y+punkt-1);

write( menu[punkt] ); {выделимстрокуменю}

textattr:=norm;

end;

procedure forsort; {указменяютсяместами}

var

rnom1:integer;

fam1:string[20];

name1:string[20];

otch1:string[20];

date1:string[20];

pol1:string[20];

stag1:integer;

adress1:string[30];

tel1:integer;

dolg1:string[20];

oklad1:integer;

begin

With Next^ do begin

rnom1:=rnom;

fam1:=fam;

name1:=name;

otch1:=otch;

pol1:=pol;

stag1:=stag;

adress1:=Adress;

tel1:=tel;

dolg1:=dolg;

oklad1:=oklad;

end;

With Next^ do begin

rnom:=Cur^.rnom;

fam:=Cur^.fam;

name:=Cur^.name;

otch:=Cur^.otch;

pol:=Cur^.pol;

stag:=Cur^.stag;

adress:=Cur^.Adress;

tel:=Cur^.tel;

dolg:=Cur^.dolg;

oklad:=Cur^.oklad;

end;

With Cur^ do begin

rnom:=rnom1;

fam:=fam1;

name:=name1;

otch:=otch1;

pol:=pol1;

stag:=stag1;

adress:=Adress1;

tel:=tel1;

dolg:=dolg1;

oklad:=oklad1;

end;

end;

procedure Sortirovka; {Сортировкапоалфавиту}

begin

Cur:=Top;

While Cur<>nil do

begin

Next:=Cur^.link;

while next<>nil do

begin

if ord(Next^.fam[1]) < ord(Cur^.fam[1]) then

ForSort;

Next:=Next^.link;

end;

cur:=cur^.link;

end;

end;

procedure Uporyad; {Сортровка по окладу}

begin

Cur:=Top;

While Cur<>nil do

begin

Next:=Cur^.link;

while next<>nil do

begin

if ord(Next^.Oklad) > ord(Cur^.Oklad) then

ForSort;

Next:=Next^.link;

end;

cur:=cur^.link;

end;

end;

procedure Position(pos:integer);

var i:integer;

begin

Cur:=Top;

For i:=1 to pos do

if i<>pos then Cur:=Cur^.link;

end;

procedure punkt0; {Очисткабазы}

var cc,k,ch:char; i:integer;

key:char;

begin

assign(sotrud,'sotrudn.dat');

cc:=chr(13);

{cc:=readkey;}

if cc=chr(13) then

begin

gotoxy(25,10);

writeln('Вы уверены,что хотите удалить базу????');

gotoxy(25,11);

Writeln('Enter-ДА, Esc-НЕТ');

key:=readkey;

if key=chr(13) then

begin

gotoxy(11,4);

write('0%');

gotoxy(63,4);

write('100%');

gotoxy(13,4);

for i:=1 to 20 do

begin

write('=');

delay(500);

end;

for i:=21 to 34 do

begin

write('=');

delay(1300);

end;

for i:=35 to 50 do

begin

write('=');

delay(200);

end;

rewrite(sotrud);

gotoxy(32,18);

write('Базаочищена');

gotoxy(32,19);

write('Нажмитеклавишу Esc');

end;

end;

end;

procedure punkt1; {Новыйсотрудник}

var k,ch:char;

begin

clrscr;

gotoxy(12,wherey);writeln('*************************************');

gotoxy(12,wherey);writeln('Добавьте в базу информацию о новом сотруднике - "Enter"');

gotoxy(12,wherey);writeln('*************************************');

ch:=readkey;

if ch<>chr(27) then

begin

new(Cur);

writeln(' Введите информацию');

write('Регистрационный номер: ');

readln(Cur^.rnom);

write('Фамилия: ');

readln(Cur^.fam);

write('Имя: ');

readln(Cur^.name);

write('Отчество: ');

readln(Cur^.otch);

write('Год и Дата рождения: ');

readln(Cur^.date);

write('Пол: ');

readln(Cur^.pol);

write('Стажработы: ');

readln(Cur^.stag);

write('Домашнийадрес: ');

readln(Cur^.adress);

write('Телефон: ');

readln(Cur^.tel);

write('Должность: ');

readln(Cur^.dolg);

write('Оклад: ');

readln(Cur^.oklad);

Cur^.link:=Top;

Top:=Cur;

end;

end;

procedure Punkt2; {Уволить}

var

rnom1:integer;

fam1,name1, otch1:string[20];

pos,f:integer;

key:char;

begin

clrscr;

writeln(' *******************************************');

writeln(' Будите удалять сотрудика из базы - "Enter"');

writeln(' *******************************************');

ch:=readkey;

if ch=chr(13) then

begin

clrscr;

if top=nil then begin

writeln('Базапуста');

readln;

end

else

BEGIN

writeln(' **********************');

writeln(' Увольнение сотрудника');

writeln(' **********************');

writeln('Пожалуйста введите');

Writeln('Регистрационный номер увольняемого ');readln(rnom1);

writeln('Фамилия увольняемого: ');readln(fam1);

writeln('Имяувольняемого: ');readln(name1);

writeln('Отчествоувольняемого: ');readln(otch1);

Cur:=Top;

pos:=1;

repeat

f:=0;

If Cur^.rnom=rnom1 then

If Cur^.fam=fam1 then

If Cur^.Name=name1 then

if Cur^.otch=otch1 then

begin

writeln('Вы действительно хотите удалить данного сотрудника');

Writeln('Enter-ДА, Esc-НЕТ');

key:=readkey;

if key=chr(13) then

begin

if Cur^.link=nil then begin dispose(Cur); f:=1; end

else

If Cur=Top then begin

If Top^.link<>nil then

begin

Top:=Top^.link;

dispose(Cur);

f:=1;

end;

end

else

begin

Position(pos-1);

Prev:=Cur;

Cur:=Cur^.link;

Next:=Cur^.link;

Prev^.link:=Next;

Dispose(Cur);

f:=1;

end;

writeln('Сотрудник ' ,fam1,' ',name1,' ',otch1, ' уволен ');

readkey;

end;

end;

Cur:=Cur^.link;

pos:=pos+1;

if (cur=nil) and (f=0) then

begin

WriteLn('Искомый сотрудник не числется.');

writeln('Возможно имя или фамилия были введены с маленькой буквы');

Write('Для продолжения нажмите любую клавишу.');

readkey;

break;

end;

until f=1;

end;

END;

end;

procedure Punkt3; {Просмотр}

var ch:char;

begin

clrscr;

sortirovka;

writeln(' **********************');

writeln(' Списоксотрудников');

writeln(' **********************');

Cur:=Top;

if top=nil then write('nichego netu')

else

Repeat

write('Регистрационныйномер: ');writeln(Cur^.rnom);

write('Фамилия: ');write(Cur^.fam);

gotoxy(40,wherey); write('ГодиДатарождения: ');writeln(Cur^.date);

write('Имя: ');write(Cur^.name);

gotoxy(40,wherey);write('Домашнийадрес: ');writeln(Cur^.adress);

write('Отчество: ');write(Cur^.otch);

gotoxy(40, wherey);write('Телефон: ');writeln(Cur^.tel);

write('Пол: ');write(Cur^.pol);

gotoxy(40,wherey);write('Должность: ');writeln(Cur^.dolg);

write('Стажработы: ');write(Cur^.stag);

gotoxy(40,wherey);write('Оклад: ');writeln(Cur^.oklad);

writeLn('**********************************************');writeln;

Cur:=Cur^.link;

ch:=ReadKey;

if ch<>chr(13) then break;

if cur=nil then

begin

Write('списококончен');

readkey;

break;

end;

until (Cur=nil) or (ch<>chr(13));

end;

procedure Punkt4; {Упорядочить}

var ch:char;

begin

clrscr;

Uporyad;

writeln(' **********************');

writeln(' Список сотрудников');

writeln(' **********************');

Cur:=Top;

if top=nil then write('Файлпуст')

else

Repeat

write('Регистрационныйномер: ');writeln(Cur^.rnom);

write('Фамилия: ');write(Cur^.fam);

gotoxy(40,wherey); write('Имя: ');writeln(Cur^.name);

write('Отчество: ');write(Cur^.otch);

gotoxy(40,wherey);write('Оклад: ');writeln(Cur^.oklad);

writeLn('**********************************************');writeln;

Cur:=Cur^.link;

ch:=ReadKey;

if ch<>chr(13) then break;

if cur=nil then

begin

Write('списококончен');

readkey;

break;

end;

until (Cur=nil) or (ch<>chr(13));

end;

Procedure Punkt5; {Поисксотрудника}

var

dol:String[10];

sch,kol:integer;

search:boolean;

sotr:array[1..10] of base;

begin

clrscr;

gotoxy(33,wherey); writeln('****************');

gotoxy(33,wherey); writeln('Поисксотрудника');

gotoxy(33,wherey); writeln('****************');

write('Введите должность сотрудника: ');readln(dol);

clrscr;

gotoxy(30,wherey); writeln('********************');

gotoxy(30,wherey); writeln('Найденные сотрудники');

gotoxy(30,wherey); writeln('********************');

Sch:=0;

I:=0;

Search:=false;

Cur:=Top;

While Cur<>nil do

begin

If Cur^.Dolg = dol then begin

i:=i+1;

sotr[i]:=Cur^;

Sch:=Sch+1;

search:=true;

end;

Cur:=Cur^.link;

if (search=false) and (Cur=nil) then

begin

Write('Искомых сотрудников нет в базе.');

writeln('Возможно должность введена с маленькой буквы');

end;

end;

If Search=true then

begin

WriteLn('Искомая должность: ',dol);

WriteLn('');

For i:=1 to Sch do

begin

write('Регистрационныйномер: ');writeln(Sotr[i].rnom);

write('Фамилия: ');write(Sotr[i].fam);

gotoxy(40,wherey); write('ГодиДатарождения: ');writeln(Sotr[i].date);

write('Имя: ');write(Sotr[i].name);

gotoxy(40,wherey);write('Домашнийадрес: ');writeln(Sotr[i].adress);

write('Отчество: ');write(Sotr[i].otch);

gotoxy(40, wherey);write('Телефон: ');writeln(Sotr[i].tel);

write('Пол: ');write(Sotr[i].pol);

gotoxy(40,wherey);write('Должность: ');writeln(Sotr[i].dolg);

write('Стажработы: ');write(Sotr[i].stag);

gotoxy(40,wherey);write('Оклад: ');writeln(Sotr[i].oklad);

writeLn('***************************************************');

ch:=ReadKey;

if ch<>chr(13) then break;

end;

end;

readkey;

end;

Begin

clrscr;

gotoxy(28,wherey);writeln('**************************');

gotoxy(28,wherey);writeln('БАЗА ДАННЫХ ПО СОТРУДНИКАМ');

gotoxy(28,wherey);writeln('**************************');

Top:=nil;

menu[1]:='1. НОВЫЙ СОТРУДНИК';

menu[2]:='2. УВОЛИТЬ СОТРУДНИКА';

menu[3]:='3. ПРОСМОТРЕТЬ СПИСОК';

menu[4]:='4. УПОРЯДОЧИТЬ СПИСОК';

menu[5]:='5. НАЙТИ СОТРУДНИКА';

menu[6]:='6. ВЫХОД';

menu[8]:= '1. Очистить базу ';

menu[9]:= '2. Продолжить базу';

menu[10]:='3. ВЫХОД';

menu[11]:='';

punkt:=8; x:=30; y:=-2; textattr:=norm;

n:=10; p:=8;

Menus;

repeat

ch:=ReadKey;

if ch=chr(0) then

begin

ch:=ReadKey;

case ch of

chr(80) : { стрелкавниз}

if punkt<=n+1 then begin

if punkt=10 then begin

gotoxy(x,y+punkt-1);

write(menu[punkt]);

textattr:= norm;

end;

if punkt=10 then punkt:=7;

gotoxy(x,y+punkt-1);

write(menu[punkt]);

punkt:=punkt+1;

textattr:=sel;

gotoxy(x,y+punkt-1);

write(menu[punkt]);

textattr:= norm;

end;

chr(72) : { стрелкавверх}

if (punkt<=n) and not(punkt<p) then begin

if punkt=8 then begin

gotoxy(x,y+punkt-1);

write(menu[punkt]);

textattr:= norm;

end;

if punkt=8 then punkt:=11;

gotoxy(x,y+punkt-1);

write(menu[punkt]);

punkt:=punkt-1;

textattr:=sel;

gotoxy(x,y+punkt-1);

write(menu[punkt]);

textattr:= norm;

end;

end; {case : of }

end

else

if ch=chr(13) then {нажатаклавиша <Enter>}

begin

case punkt of

8 : punkt0 ;

9 : ch:=chr(27) ;

10 : exit ; {выход}

end;

End;

until ch= chr(27) ; {27 - код <Esc>}

{clrscr;}

punkt:=1; x:=30; y:=5; textattr:=norm;

n:=6; p:=1;

Menus;

filetodin;

repeat

ch:=ReadKey;

if ch=chr(0) then

begin

ch:=ReadKey;

case ch of

chr(80) : { стрелкавниз}

if punkt<=n+1 then begin

if punkt=6 then begin

gotoxy(x,y+punkt-1);

write(menu[punkt]);

textattr:= norm;

end;

if punkt=6 then punkt:=0;

gotoxy(x,y+punkt-1);

write(menu[punkt]);

punkt:=punkt+1;

textattr:=sel;

gotoxy(x,y+punkt-1);

write(menu[punkt]);

textattr:= norm;

end;

chr(72) : { стрелкавверх}

if (punkt<=n) and not(punkt<1) then begin

if punkt=1 then begin

gotoxy(x,y+punkt-1);

write(menu[punkt]);

textattr:= norm;

end;

if punkt=1 then punkt:=7;

gotoxy(x,y+punkt-1);

write(menu[punkt]);

punkt:=punkt-1;

textattr:=sel;

gotoxy(x,y+punkt-1);

write(menu[punkt]);

textattr:= norm;

end;

end; {case : of }

end

else

if ch=chr(13) then {нажатаклавиша <Enter>}

begin

case punkt of

1 : punkt1 ;

2 : punkt2 ;

3 : punkt3 ;

4 : punkt4 ;

5 : punkt5 ;

6 : ch:=chr(27) ; {выход}

end;

Menus;

End;

until ch= chr(27) ; {27 - код <Esc>}

{clrscr;}

dintofile;

End.


Приложение 2

Распечатка структуры базы даны

**********************

Список сотрудников

**********************

Регистрационный номер: 2

Фамилия: Бояршина Год и Дата рождения: 2.06.85

Имя: Елена Домашний адрес: Гая

Отчество: Александровна Телефон: 28666

Пол: ж Должность: Уборщица

Стаж работы: 5 Оклад: 2000

*************************************************************

Регистрационный номер: 6

Фамилия: Герасимов Год и Дата рождения: 21.12.80

Имя: Евгений Домашний адрес: Ворошилова 34-34

Отчество: Алексеивич Телефон: -23077

Пол: м Должность: Секретарь

Стаж работы: 3 Оклад: 4000

*************************************************************

Регистрационный номер: 3

Фамилия: Григорьев Год и Дата рождения: 10.07.85

Имя: Александр Домашний адрес: Голосова 103-108

Отчество: Владимирович Телефон: 2632

Пол: м Должность: Директор

Стаж работы: 4 Оклад: 30000

*************************************************************

Регистрационный номер: 4

Фамилия: Матросов Год и Дата рождения: 16.07.85

Имя: Игорь Домашний адрес: Голосова 102-102

Отчество: Витальевич Телефон: 2027

Пол: м Должность: Бухгалтер

Стаж работы: 2 Оклад: 6000

*************************************************************

Регистрационный номер: 1

Фамилия: Прохоров Год и Дата рождения: 23.11.80

Имя: Виктор Домашний адрес: Баныкина

Отчество: Сергеевич Телефон: -856

Пол: м Должность: Охранник

Стаж работы: 3 Оклад: 5500

*************************************************************

Регистрационный номер: 5

Фамилия: Ромашенко Год и Дата рождения: 12.05.80

Имя: Владимир Домашний адрес: Баныкина

Отчество: Владимирович Телефон: -4124

Пол: м Должность: Мэнеджер

Стаж работы: 5 Оклад: 10000

*************************************************************

список окончен


Приложение 3

Распечатку результатов решения задачи по данным контрольного примера

Уволен служащий с ФИО – Матросов Игорь Витальевич

Принят на работу новый сотрудник с ФИО – Сурьянинова Алена

Структура база данных выглядит следующим образом:

**********************

Список сотрудников

**********************

Регистрационный номер: 2

Фамилия: Бояршина Год и Дата рождения: 2.06.85

Имя: Елена Домашний адрес: Гая

Отчество: Александровна Телефон: 28666

Пол: ж Должность: Уборщица

Стаж работы: 5 Оклад: 2000

*************************************************************

Регистрационный номер: 6

Фамилия: Герасимов Год и Дата рождения: 21.12.80

Имя: Евгений Домашний адрес: Ворошилова 34-34

Отчество: Алексеивич Телефон: -23077

Пол: м Должность: Секретарь

Стаж работы: 3 Оклад: 4000

*************************************************************

Регистрационный номер: 3

Фамилия: Григорьев Год и Дата рождения: 10.07.85

Имя: Александр Домашний адрес: Голосова 103-108

Отчество: Владимирович Телефон: 2632

Пол: м Должность: Директор

Стаж работы: 4 Оклад: 30000

*************************************************************

Регистрационный номер: 1

Фамилия: Прохоров Год и Дата рождения: 23.11.80

Имя: Виктор Домашний адрес: Баныкина

Отчество: Сергеевич Телефон: -856

Пол: м Должность: Охранник

Стаж работы: 3 Оклад: 5500

*************************************************************

Регистрационный номер: 5

Фамилия: Ромашенко Год и Дата рождения: 12.05.80

Имя: Владимир Домашний адрес: Баныкина

Отчество: Владимирович Телефон: -4124

Пол: м Должность: Мэнеджер

Стаж работы: 5 Оклад: 10000

*************************************************************

Регистрационный номер: 7

Фамилия: Сурьянинова Год и Дата рождения: 12.05.80

Имя: Алёна Домашний адрес: Революционная

Отчество: Александровна Телефон: 16676

Пол: ж Должность: Секретарь

Стаж работы: 10 Оклад: 5000

*************************************************************

список окончен

Оценить/Добавить комментарий
Имя
Оценка
Комментарии:
Хватит париться. На сайте FAST-REFERAT.RU вам сделают любой реферат, курсовую или дипломную. Сам пользуюсь, и вам советую!
Никита09:03:26 02 ноября 2021
.
.09:03:24 02 ноября 2021
.
.09:03:24 02 ноября 2021
.
.09:03:24 02 ноября 2021
.
.09:03:23 02 ноября 2021

Смотреть все комментарии (21)
Работы, похожие на Курсовая работа: База данных "Сотрудники"

Назад
Меню
Главная
Рефераты
Благодарности
Опрос
Станете ли вы заказывать работу за деньги, если не найдете ее в Интернете?

Да, в любом случае.
Да, но только в случае крайней необходимости.
Возможно, в зависимости от цены.
Нет, напишу его сам.
Нет, забью.



Результаты(294402)
Комментарии (4230)
Copyright © 2005 - 2024 BestReferat.ru / реклама на сайте