База данных «Библиотека»

Автор работы: Пользователь скрыл имя, 25 Февраля 2015 в 21:56, курсовая работа

Описание работы

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

Содержание работы

Введение…………………………………………………………………….3
Задачи курсовой работы……………………………………………..……….5
1. Разработка программы…………………….…………….……………....6
1.1. Модель и метод решения задачи…………….….…………...6
1.2. Описание структуры данных……………..…….……….…...6
1.3. Алгоритмы решения задачи……………….…………..…….7
2. Руководство программиста………………………………...….………..8
3. Руководство пользователя………………………………..……………..9
4. Результаты тестирования программы……………………..………….10
Заключение………………………………………………………..………11
Список литературы………………………………………………..……...12

Файлы: 1 файл

KURSACh(1).doc

— 273.50 Кб (Скачать файл)

Readln(filename);

Assign(f,filename);

Reset(f);

With st do

begin

ClrScr;

Write('Введите инвентарный  номер книги:');

Readln(st2);

x:=0;

While not eof(f) do

begin

Read(f,st);

if st.Inv_nomer=st2 then

begin

ClrScr;

textcolor(yellow);

Writeln('Введите новые данные о книге:');

Write('Инвентарный  номер книги:');

Readln(st.Inv_nomer);

Write('Имя автора:');

Readln(st.Name_author);

Write('Наименование книги:');

Readln(st.Naim_knigi);

Write('Год издания:');

Readln(st.God_izd);

Write('Наименование издательства:');

Readln(st.Naim_izd);

Write('Место издания:');

Readln(st.Mesto_izd);

Inv_nomer2:=Inv_nomer;

Name_author2:=Name_author;

Naim_knigi2:=Naim_knigi;

God_izd2:=God_izd;

Naim_izd2:=Naim_izd;

Mesto_izd2:=Mesto_izd;

seek(f,filepos(f)-1);

Write(f,st); x:=1;

end;

end;

Close(f);

end;

if x=0 then

Begin

ClrScr;

Writeln('Записи с  таким номером нет!');

Readln

end;

end;

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

Procedure Openfile; {процедура открытия файла}

Var

rez:integer; kn:char;

Begin

While rez<>0 do

begin

ClrScr;

window(6,3,80,50);

textbackground(9);

clrscr;

window(22,10,57,11);

textbackground(5);

clrscr;

textcolor(yellow);

Write('Задайте имя файла:');

Readln(filename);

Assign(f,filename);

Reset(f);

rez:=IOResult;

end;

end;

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

Procedure Outputfile; {вывод данных из файла}

Var st:Bibl;

Begin

While not eof(f) do

Begin

Read(f,st);

ClrScr;

window(6,3,80,50);

textbackground(9);

clrscr;

window(22,5,57,17);

textbackground(5);

clrscr;

textcolor(yellow);

Writeln('Инвентарный номер книги:',st.Inv_nomer);

Writeln('Имя автора:',st.Name_author);

Writeln('Наименование книги:',st.Naim_knigi);

Writeln('Год издания:',st.God_izd);

Writeln('Наименование  издательства:',st.Naim_izd);

Writeln('Место издания:',st.Mesto_izd);

Writeln('Для продолжения нажмите (Enter)');

Readln;

end;

Close(f);

end;

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

Procedure Clearfile; {удаление записи из файла}

Var st:Bibl;

I_N:integer;

fo:file of Bibl;

begin

ClrScr;

window(6,3,80,50);

textbackground(9);

clrscr;

window(16,10,65,12);

textbackground(5);

clrscr;

textcolor(yellow);

Writeln('Задайте  имя файла, из которого удаляются  элементы');

Readln(filename);

Assign(f,filename);

Reset(f);

Assign(fo,'newfile.dat');

Rewrite(fo);

ClrScr;

window(16,10,71,13);

Writeln('Введите номер книги, запись о которой удаляется');

Readln(I_N);

While not eof(f) do

begin

read(f,st);

if st.Inv_nomer<>I_N then

Write(fo,st);

end;

Close(f);

Close(fo);

Erase(f);

Rename(fo,filename);

end;

{Основная часть  программы}

Procedure P_Nom; {поиск  по номеру}

var PNo:integer; st:Bibl;

begin

clrscr;

window(6,3,80,50);

textbackground(9);

clrscr;

window(19,5,61,17);

textbackground(5);

clrscr;

textcolor(yellow);

write ('Введите инвентарный  номер книги: ');

readln(PNo);

clrscr;

while not eof(f) do begin

read(f,st);

if PNo=st.Inv_nomer then begin

Writeln('Инвентарный номер книги:',st.Inv_nomer);

Writeln('Имя автора:',st.Name_author);

Writeln('Наименование книги:',st.Naim_knigi);

Writeln('Год издания:',st.God_izd);

Writeln('Наименование  издательства:',st.Naim_izd);

Writeln('Место издания:',st.Mesto_izd);end;

if PNo<> st.Inv_nomer then

Writeln('Книг с  таким номером нет!');

Writeln('Нажмите <Enter> для выхода ');

readln; end;

close(f);

end;

Procedure P_Name; {поиск  по имени автора}

var PN:string[15]; st:Bibl;

begin

ClrScr;

window(6,3,80,50);

textbackground(9);

clrscr;

window(19,5,61,17);

textbackground(5);

clrscr;

textcolor(yellow);

writeln('Введите  полное имя автора: ');

readln(PN);

clrscr;

while not eof(f) do

read(f,st);

if PN=st.Name_author then begin

Writeln('Инвентарный номер:',st.Inv_nomer);

Writeln('Имя автора:',st.Name_author);

Writeln('Наименование книги:',st.Naim_knigi);

Writeln('Год издания:',st.God_izd);

Writeln('Наименование  издательства:',st.Naim_izd);

Writeln('Место издания:',st.Mesto_izd);

end;

if PN<> st.Name_author then

writeln('Авторов  с таким именем нет!');

writeln('Нажмите <Enter> для выхода ');

readln;

close(f);

end;

Begin

ClrScr; {создание меню}

window(6,3,80,50);

textbackground(9);

clrscr;

window(20,7,58,19);

textbackground(5);

clrscr;

textcolor(green);

Writeln( ' Меню:');

textcolor(yellow);

Writeln('1:Создание файла');

Writeln('2:Добавление  записи в файл');

Writeln('3:Редактирование  записи в файле');

Writeln('4:Просмотр  файла ');

Writeln('5:Удаление  записи из файла');

Writeln('6:Поиск по  инвентарному номеру книги');

Writeln('7:Поиск по  имени автора');

Writeln('8:Выход из  программы');

Readln(k);

Case k of

1: begin Creatfile; Inputfile end;

2:begin Addrecord; Inputfile end;

3: redzap;

4:begin Openfile; Outputfile end;

5:Clearfile;

6:begin Openfile; P_Nom end;

7:begin Openfile; P_Name end;

8:Exit

end;

End.

 

 


 



Информация о работе База данных «Библиотека»