Информатика / лекции
.pdf9. Записной тип данных. СУБД |
251 |
{процедура запроса по родителям} procedure Z3(var F:TDB);
var s:string[70]; begin
clrScr;
write('Введите данные о родителях: '); readln(s);
writeLn;
reset(f);
While not eof(f) do begin
read(f,r);
if r.f6=s then begin PrintRecord(R); readKey;
end;
end;
close(F)
end;
{процедура запроса по дате регистрации} procedure Z2(var F:TDB);
var s:TDate; begin
clrScr;
write('Введите дату регистрации: '); InputDate(s);
writeLn;
reset(f);
while not eof(f) do begin
read(f,r);
if (r.f4.d=s.d) and (r.f4.m=s.m) and (r.f4.y=s.y) then begin
PrintRecord(R);
readKey;
end;
end;
close(F);
end;
252 9.3 Пример программы реализующей файлы записей
{процедура для работы с вложенным меню} procedure Z0(var F:TDB);
var x,y,ml:integer; begin
ml:=length(z[1]); for i:=1 to NZ do
if length(z[i])>ml then ml:=length(z[i]);
y:=((MX-NZ) div 2) + 1; x:=((MY-ml) div 2) + 1; repeat
D:=MenuZ(x,y); case D of
1:z1(F);
2:z2(F);
3:z3(f);
end;
until D=NZ; end;
{функция вывода главного меню} function Menu(X,Y:Byte):byte; var k:Byte;
begin k:=1; repeat
textbackground(COLOR1);
textcolor(COLOR2);
clrScr;
for I:=1 to NM do begin
GotoXY(X,Y+I-1);
SetLineColor(k,I);
write(M[I]);
end;
C:=readKey; case Ord(C) of
72:begin
if k=1 then k:=NM else k:=k-1;
end;
80:begin
if k=NM then k:=1 else k:=k+1;
end end;
until Ord(C)=13; Menu:=k;
end;