Как правильно объявить в модуле переменную, тип данных которой описан в основной программе? - Pascal

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

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

Как обратиться из модуля к записе, которая определена в программе? Например, есть такой код основной программы:
Листинг программы
  1. uses add_sub1;
  2. type
  3. TSubscriber = record
  4. public
  5. surname : string[20];
  6. tel : LongInt;
  7. end;
  8. var s : TSubscriber;
  9. begin
  10. s.surname := 'asdf';
  11. s.tel := 1234;
  12. ad_rec(s);
  13. end.
И есть такой модуль, в котором используется тип данных, описанный в основной программе:
Листинг программы
  1. unit add_sub1;
  2. interface
  3. procedure ad_rec(new_s : TSubscriber);
  4. implementation
  5. procedure ad_rec(new_s : TSubscriber);
  6. var f : file of TSubscriber;
  7. begin
  8. end;
  9. end.
Выдаёт ошибку: неизвестное имя TSubsciber. Пробовал разные варианты и ничего не помогло. Как правильно объявить в модуле переменную, тип данных которой описан в основной программе?

Решение задачи: «Как правильно объявить в модуле переменную, тип данных которой описан в основной программе?»

textual
Листинг программы
  1. unit add_sub1;
  2.  
  3. interface
  4. uses my_record;    
  5.     procedure ad_rec(new_s  : TSubscriber);
  6. implementation
  7.     procedure ad_rec(new_s  : TSubscriber);
  8.     var s : TSubscriber;
  9.         f : file of TSubscriber;
  10.     begin
  11.       assign(f,'type_file.dat');
  12.       reset(f); // открытие уже существующего
  13.       while not eof(f) do begin
  14.         read(f,s);
  15.         if(s.tel = new_s.tel) then write('Телефоны совпадают');
  16.       end;
  17.       write(f,new_s);
  18.       close(f);
  19.     end;
  20. end.

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

  1. Создание переменной new_s типа TSubscriber для хранения новой записи в процедуре ad_rec(new_s : TSubscriber).
  2. Объявление локальных переменных:
    • s типа TSubscriber для временного хранения записи из файла.
    • f типа file of TSubscriber для работы с файлом.
  3. Присвоение переменной f значения 'type_file.dat' с помощью процедуры assign(f,'type_file.dat'), что указывает на файл типа TSubscriber.
  4. Открытие файла для доступа к его содержимому с помощью процедуры reset(f).
  5. Цикл чтения записей из файла и проверки на совпадение номеров телефонов, если совпадение найдено, выводится сообщение Телефоны совпадают.
  6. Запись новой записи new_s в файл с помощью процедуры write(f,new_s).
  7. Закрытие файла с помощью процедуры close(f).

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

8   голосов , оценка 4.125 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы