Задача. Выполнить поиск номера телефона и его владельца по справочнику, сформированному в предыдущем примере. При работе программы должен вводиться номер телефона, и если он есть в справочнике, то на экран должны выдаваться фамилия и адрес его владельца. Если набран неправильный номер, которого в справочнике нет, то необходимо вывести сообщение об этом.
Решение.
Program PskTel;
Type
Tel=Record
Nom : Integer;
Fam,Adr : String[15];
End;
Var
Ftel : File Of Tel;
Rtel : Tel;
Num : Integer;
S : Char;
Begin
Assign (Ftel,’tsprav’);
Reset (Ftel); { Открытие файла для чтения}
Repeat {Поиск фамилии и адреса абонента по номеру}
Write(’Введите номер телефона: ’);
ReadLn(Num);
Seek(Ftel,Num);
If Not Eof (Ftel) Then
Begin
Read (ftel,Rtel);
With Rtel do
Writeln(’Фамилия: ’,fam:15, ’ Адрес: ’,
Adr:15, ’ Номер телефона: ’,nom);
End
else
Writeln(’Неправильный номер’);
Writeln (’Продолжаем?-Д/Н, Y/N’);
Readln (S);
Until (S=’H’) Or (S=’н’) Or (S=’n’) Or (S=’N’);
Writeln (’Конец работы. Нажмите клавишу ENTER’);
Readln;
End.