Дополнить код процедурами - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Есть файл, в котором записаны данные из телефонного справочника. Нужно прочесть этот файл, вывести содержимое на экран, а также написать процедуру, которая будет добавлять запись в конец файла и процедуру которая будет искать номер телефона по фамилии
Program Spravochnik;
Uses CRT;
Var Sprav :Text;
    s     :Char;
    k     :Integer;
Begin
ClrScr;
Assign(Sprav, 'file.txt');
Reset(Sprav);
    While (NOT EOF(Sprav)) do
    Begin
        Read(Sprav, s);
            Write(s);
                Inc(k);
                    End;
Close(Sprav);
readln;
End.

Решение задачи: «Дополнить код процедурами»

textual
Листинг программы
program Spravochnik;
 
Uses CRT;
 
var
  Sprav: Text;
  s: Char;
  k: Integer;
 
procedure AppendData(var f: text);
var
  s: string;
begin
  append(f);
  writeln('Введите данные: ');
  readln(s);
  writeln(f, s);
  close(f);
end;
 
procedure FindData(var f: text);
var
  sb, s: string;
 
begin
  writeln('Введите искомую фамилию: ');
  readln(sb);
  reset(f);
  while not eof(f) do
  begin
    readln(f, s);
    if pos(sb, s, 1) <> 0 then
      writeln(s);
  end;
  close(f);
end;
 
begin
  ClrScr;
  Assign(Sprav, 'file.txt');
  Reset(Sprav);
  while (not EOF(Sprav)) do
  begin
    Read(Sprav, s);
    Write(s);
    Inc(k);
  end;
  Close(Sprav);
  appenddata(sprav);
  finddata(sprav);
  readln;
end.

Объяснение кода листинга программы

  1. Объединение данных из файла и ввод новых данных Процедура AppendData добавляет данные из файла и новые данные в конец файла. Процедура FindData ищет данные в файле по фамилии.
  2. Ввод и вывод данных Для ввода данных используется функция readln, для вывода данных используется функция writeln.
  3. Чтение и запись данных в файл Для чтения и записи данных в файл используется функция readln(f, s) и функция write(s).
  4. Управление потоком данных Для управления потоком данных используется цикл while not eof(f) do.
  5. Обработка ошибок Для обработки ошибок используется проверка на конец файла EOF(f).
  6. Использование функций и переменных В коде используются следующие функции и переменные:
    • функция Assign для присвоения значения переменной Sprav;
    • функция Reset для сброса файла Sprav;
    • функция Read для чтения данных из файла Sprav;
    • переменная s для хранения данных;
    • переменная k для подсчета количества прочитанных записей.
  7. Использование условий и операторов В коде используются следующие условия и операторы:
    • оператор if для проверки наличия искомой фамилии в данных;
    • оператор inc для увеличения значения переменной k;
    • оператор close для закрытия файла Sprav.

Оцени полезность:

10   голосов , оценка 4.2 из 5
Похожие ответы