ВУЗ:
Составители:
Рубрика:
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
- …
- следующая ›
- последняя »