
- •Записи
- •Описание записи
- •Примеры описания записей
- •Примеры описания записей
- •Примеры описания записей
- •Действия с записями
- •Оператор присоединения
- •Примеры использования оператора присоединения With
- •Пример использования записей
- •procedure VVOD(var s:spisok;var k:integer);
- •procedure SORT_ANKETA(var s:spisok; k:integer);
- •procedure VYVOD(s:spisok;k:integer);
- •procedure VYVOD_pidpriemstvo(s:spisok;k:integer);
- •BEGIN clrscr; VVOD(s,k); VYVOD(s,k);
- •Записи с вариантной частью
- •Записи с вариантной частью
- •Пример вариантной записи
- •Размещение в памяти
- •Файлы
- •Файлы
- •Хранение данных:
- •Организация ввода-вывода
- •Процедуры и функции
- •IOResult:
- •Текстовые файлы
- •Подпрограммы для текстовых файлов
- •Бестиповые и компонентные файлы
- •Бестиповые файлы
- •Пример
- •Компонентные файлы
- •Прямой доступ
- •Типизированные файлы
- •Процедуры и функции, связанные с позиционированием указателя текущей записи
- •Пpиклад: файл містить перелік назв книг та їх авторів. Знайти всі книги, що
- •begin
- •{Пошук книг наданого автора)
- •ПРИМЕРЫ
- •Создание нового файла
- •ВЫВОД НА ДИСПЛЕЙ
- •УДАЛЕНИЕ ЗАПИСЕЙ ИЗ ФАЙЛА
- •РЕДАКТИРОВАНИЕ ЗАПИСИ
- •ДОБАВЛЕНИЕ ЗАПИСИ В КОНЕЦ ФАЙЛА
- •СОЗДАНИЕ ТЕКСТОВОГО ФАЙЛА
- •СОРТИРОВКА ТИПИЗИРОВАННОГО ФАЙЛА С ИСПОЛЬЗАВАНИЕМ
- •СОЗДАНИЕ МЕНЮ В ГЛАВНОЙ ПРОГРАММЕ

ВЫВОД НА ДИСПЛЕЙ
procedure vivod(var f:A);
var i:integer;
c:newr;
begin
clrscr;
seek(f,0); {reset(f)}
while not eof(f) do
begin
read(f,c);
writeln('Surname: ', c.name,' bal: ', c.bal,' forma navch: ',c.form);
end;
readkey;
end;
42

УДАЛЕНИЕ ЗАПИСЕЙ ИЗ ФАЙЛА
procedure delline(var f:A);
var n:integer;
begin
clrscr;
writeln('type in position to start delete');
readln(n);
n:=n-1;
seek(f,n);
truncate(f);
end;
43

РЕДАКТИРОВАНИЕ ЗАПИСИ
procedure modify(var f:A);
var n:integer;
c:newr;
begin
clrscr;
writeln('type in #line to modify');
readln(n);
n:=n-1;( FILIPOS(f) )
seek(f,n);
writeln('type-in: surname; bal; forma navch;');
readln(c.name,c.bal,c.form);
write(f,c);
end;
44

ДОБАВЛЕНИЕ ЗАПИСИ В КОНЕЦ ФАЙЛА
procedure addline(var f:A);
var n:integer;
c:newr;
begin
seek(f,filesize(f));
writeln('type-in: surname; bal; forma navch;');
readln(c.name);
readln(c.bal);
readln(c.form);
write(f,c);
end;
45

СОЗДАНИЕ ТЕКСТОВОГО ФАЙЛА
procedure zavd(var f:A; var ft:text);
var
max:real;
m,i,k,n:integer;
st,bal:string;
c:newr;
begin
k:=0;
assign(ft,'23.txt');
rewrite(ft);
|
seek(f,0); |
{reset(f)} |
while not eof(f) do
begin
read(f,c);
if (c.bal<3)and(c.form='budget') then begin
c.form:='na vidrah.'; k:=k+1; str(c.bal,bal);
st:= 'Surname:' + c.name+' bal: '+ bal+' forma navch: '+c.form; writeln(ft,st);
end
end;
end;
46

СОРТИРОВКА ТИПИЗИРОВАННОГО ФАЙЛА С ИСПОЛЬЗАВАНИЕМ
ПРОЦЕДУРЫ SEEK(f,n)
САМОСТОЯТЕЛЬНО
47

СОЗДАНИЕ МЕНЮ В ГЛАВНОЙ ПРОГРАММЕ
begin
clrscr;
repeat
clrscr;
writeln('to edit file type e');
writeln('to vivod file type f');
writeln('to zavd task file type z');
writeln('to exit press ESC');
c:=readkey;
case c of
|
'e': edit(f); |
|
'v': vivod(f); |
|
'z': zavd(f,ft); |
end;
until (c=#27);
close(f);
48