ВУЗ:
Составители:
Рубрика:
35
begin
assign(g,nam); {связывание файловой перемен-
ной с физическим файлом}
rewrite(g); {открытие файла для записи}
vv(z); {ввод одной записи}
while z.zip>0 do begin
write(g,z); {перепись записи в файл}
vv(z)
end;
close(g); {закрытие файла}
end;
procedure app(var g:fil;nam:st);
var z:stadt;n:longint;
begin
assign(g,nam);
reset(g);
n:=filesize(g); {n-число записей в файле}
seek(g,n+1); {установка текущего указателя за
последней записью в файле}
vv(z); {ввод одной записи}
while z.zip>0 do begin
write(g,z); {перепись записи в файл}
vv(z)
end;
close(g); {закрытие
файла}
end;
procedure poisk(var g:fil;nam:st); {выдача сведений о городах-
миллионерах}
var z:stadt;
begin
assign(g,nam);
reset(g);
writeln(′Название города ′:20,′Число жителей ′:20);
while not eof(g) do begin {цикл выполняется, пока не дос-
тигнут конец файла}
read(g,z); {чтение одной записи из файла}
if z.zahl>1e6 then writeln(z.name:20,z.zahl:20)
end;
close(g);
writeln(′Нажмите enter′);readln;
end;
procedure prosmotr(var g:fil;nam:st); {просмотр файла}
var z:stadt;
begin
36
assign(g,nam);
reset(g);
writeln(′Название города ′:20, ′Число жителей ′:20);
while not eof(g) do begin {цикл выполняется
, пока не
достигнут конец файла}
read(g,z); {чтение одной записи из файла}
writeln(z.name:20,z.zahl:20);
writeln(′Нажмите enter′); readln;
end;
close(g);
writeln(′Нажмите enter′); readln;
end;
procedure ism(var g:fil;nam:st);
var s,z:stadt;
p:byte; {p=0, если нужная запись не най-
дена, иначе p=1}
x:byte; {x-селектор для выбора}
m:set of byte; {m-множество допустимых значе-
ний x}
u:byte; q:fil;name:st;
begin
m:=[1..3]; name:=′c:\new.dat′;
assign(g,nam); assign(q,name);
rewrite(q);
reset(g);
writeln(′ввод названия города,′); readln(s.name);
repeat
writeln(′1-для изменения названия города
′);
writeln(′2-для изменения числа жителей′);
writeln(′3-для удаления записи о городе из файла′);
readln(x);
until x in m; {выход из цикла при правильном
вводе значения х}
u:=0;
while not eof(g) do begin {пока не конец файла}
read(g,z);
if z.name=s.name then begin
u:=1;
case x of
1: begin
writeln(′ввод нового названия города′);
readln(z.name);
end;
begin assign(g,nam);
assign(g,nam); {связывание файловой перемен- reset(g);
ной с физическим файлом} writeln(′Название города ′:20, ′Число жителей ′:20);
rewrite(g); {открытие файла для записи} while not eof(g) do begin {цикл выполняется, пока не
vv(z); {ввод одной записи} достигнут конец файла}
while z.zip>0 do begin read(g,z); {чтение одной записи из файла}
write(g,z); {перепись записи в файл} writeln(z.name:20,z.zahl:20);
vv(z) writeln(′Нажмите enter′); readln;
end; end;
close(g); {закрытие файла} close(g);
end; writeln(′Нажмите enter′); readln;
procedure app(var g:fil;nam:st); end;
var z:stadt;n:longint; procedure ism(var g:fil;nam:st);
begin var s,z:stadt;
assign(g,nam); p:byte; {p=0, если нужная запись не най-
reset(g); дена, иначе p=1}
n:=filesize(g); {n-число записей в файле} x:byte; {x-селектор для выбора}
seek(g,n+1); {установка текущего указателя за m:set of byte; {m-множество допустимых значе-
последней записью в файле} ний x}
vv(z); {ввод одной записи} u:byte; q:fil;name:st;
while z.zip>0 do begin begin
write(g,z); {перепись записи в файл} m:=[1..3]; name:=′c:\new.dat′;
vv(z) assign(g,nam); assign(q,name);
end; rewrite(q);
close(g); {закрытие файла} reset(g);
end; writeln(′ввод названия города,′); readln(s.name);
procedure poisk(var g:fil;nam:st); {выдача сведений о городах- repeat
миллионерах} writeln(′1-для изменения названия города′);
var z:stadt;
writeln(′2-для изменения числа жителей′);
begin
writeln(′3-для удаления записи о городе из файла′);
assign(g,nam);
readln(x);
reset(g);
until x in m; {выход из цикла при правильном
writeln(′Название города ′:20,′Число жителей ′:20);
вводе значения х}
while not eof(g) do begin {цикл выполняется, пока не дос-
u:=0;
тигнут конец файла}
while not eof(g) do begin {пока не конец файла}
read(g,z); {чтение одной записи из файла}
read(g,z);
if z.zahl>1e6 then writeln(z.name:20,z.zahl:20)
if z.name=s.name then begin
end;
u:=1;
close(g);
case x of
writeln(′Нажмите enter′);readln; 1: begin
end;
writeln(′ввод нового названия города′);
procedure prosmotr(var g:fil;nam:st); {просмотр файла}
readln(z.name);
var z:stadt;
end;
begin
35 36
Страницы
- « первая
- ‹ предыдущая
- …
- 16
- 17
- 18
- 19
- 20
- …
- следующая ›
- последняя »
