Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
отчет2 курсач.doc
Скачиваний:
2
Добавлен:
16.09.2019
Размер:
459.26 Кб
Скачать

Блок-схема

unit Unit1;

……

end;

const

filename='d:\Library.txt';

var

Form1: TForm1;

f:textfile;

s,str:string;

i,ind:integer;

type

rc=record

s1:string[10];

s2:string[20];

s3:string[30];

s4:string[4];

s5:string[3];

s6:string[2];

end;

var rec:rc;

implementation

{$R *.dfm}

procedure TForm1.Button2Click(Sender: TObject);

var s:string;

tmps:char;

begin

stringgrid1.RowCount:=1;

s:=edit1.Text;

assignfile(f,filename); //связываем файловую переменную f с физическим файлом на диске

reset(f); //пробуем открыть файл для чтения

readln(f,tmps); //считываем две первые строки из файла они не нужны - это шапка

readln(f,tmps);

ind:=1;

while not eof(f) do //цикл пока не достигнут конец файла

begin

{Далее читаем строку из файла в переменные rec.s1-rec.s6, в переменную tmps считываем символ "|",

который разделяет столбцы в файле}

read(f,rec.s1);

read(f,tmps);

read(f,rec.s2);

read(f,tmps);

read(f,rec.s3);

read(f,tmps);

read(f,rec.s4);

read(f,tmps);

read(f,rec.s5);

read(f,tmps);

readln(f,rec.s6);

if pos(s,rec.s2)<>0 then

begin

stringgrid1.rowcount:=ind+1; //увеличиваем количество строк в таблице на форме на 1

stringgrid1.cells[0,ind]:=inttostr(ind); //выводим в таблицу на форме считанные данные

stringgrid1.cells[1,ind]:=rec.s1;

stringgrid1.cells[2,ind]:=rec.s2;

stringgrid1.cells[3,ind]:=rec.s3;

stringgrid1.cells[4,ind]:=rec.s4;

stringgrid1.cells[5,ind]:=rec.s5;

stringgrid1.cells[6,ind]:=rec.s6;

ind:=ind+1; //увеличиваем индекс на 1

end;

end;

closefile(f); //закрываем файл

end;

procedure TForm1.FormActivate(Sender: TObject);

var tmps:char;

begin

{Вывод шапки таблицы на форме}

stringgrid1.Cells[0,0]:='№';

stringgrid1.Cells[1,0]:='Шифр';

stringgrid1.Cells[2,0]:='Автор';

stringgrid1.Cells[3,0]:='Название книги';

stringgrid1.Cells[4,0]:='Год';

stringgrid1.Cells[5,0]:='№ стелажа';

stringgrid1.Cells[6,0]:='№ полки';

{Установка ширины столбцов таблицы на форме}

stringgrid1.ColWidths[0]:=20;

stringgrid1.ColWidths[1]:=65;

stringgrid1.ColWidths[2]:=140;

stringgrid1.ColWidths[3]:=190;

stringgrid1.ColWidths[4]:=40;

stringgrid1.ColWidths[5]:=70;

stringgrid1.ColWidths[6]:=60;

end;

end.

32