Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Подпрограммы. Процедуры. Функции




Записи.

 

Записи – это средство описания сложных структурированных типов данных. В записях могут содержаться данные нескольких более простых типов. Хорошим наглядным примером записи является информация о контакте в мобильном телефоне. Каждый контакт имеет такие поля, как имя, фамилия, номер телефона, email, фотографию профиля и т.д. Все они относятся к разным типам, но объединены в единую структуру.

Формат описания записей:

TYPE
[имя_записи] = RECORD
[поле1]: [тип1];
[поле2]: [тип2];
….
END;
VAR
[экземпляр_записи_1], [экземпляр_записи_2], ….: [имя_записи];

 

Обратите внимание, что записи описываются в разделе TYPE, а уже конкретные экземпляры записи задаются в разделе VAR.

Обращение к элементам записи в теле программы происходит путём указания имени экземпляра записи и через точку – нужного поля, например:

MyRecord.X:= 10; { присвоить значение 10 полю X экземпляра записи MyRecord}

 

Когда в программе имеется множество обращений к одному и тому же экземпляру записи, существует возможность упростить обращение в таком виде:

WITH MyRecord DO BEGIN
{ некоторые операции }
END;

 

Если операция только одна, то пара BEGIN - END не нужна.

Пример описания записи в записной книжке и обращения к ней в теле программы.

 

TYPE ContactRec = RECORD { описываем запись }
Name, Surname: string[10]; { имя и фамилия, строковый тип }
HomePhone, MobilePhone: real; { домашний и мобильный телефоны, вещественный тип }
Email: string [20]; { email, строковый тип }
END;

VAR
Contact: ContactRec; { описываем экземпляр записи }
BEGIN
{…. некоторый код … }

Write (‘Введите имя контакта: ‘);
ReadLn(Contact.Name); { читаем с клавиатуры значение в поле ContactName }

{…. некоторый код …}

WITH Contact DO BEGIN { далее идёт обращение к полям записи Contact }
if Name = Surname then Write (‘Имя и фамилия совпадают!’);
if HomePhone = MobilePhone then Write (‘Домашний и мобильный телефоны совпадают!);
END;

{…. некоторый код ….}

END.

 

 

 

Подпрограмма - это отдельная функционально независимая часть программы. Любая подпрограмма обладает той же структурой, которой обладает и вся программа. Подпрограммы решают три важные задачи:

  • избавляют от необходимости многократно повторять в тексте программы аналогичные фрагменты;
  • улучшают структуру программы, облегчая ее понимание;
  • повышают устойчивость к ошибкам программирования и непредвиденным последствиям при модификациях программы.

Очень важно понимать, что в подпрограммы выделяется любой законченный фрагмент программы. В качестве ориентиров просмотрите следующие рекомендации:

  1. Когда Вы несколько раз перепишите в программе одни и те же последовательности команд, необходимость введения подпрограммы приобретает характер острой внутренней потребности.
  2. Иногда слишком много мелочей закрывают главное. Полезно убрать в подпрограмму подробности, заслоняющие смысл основной программы. Полезно разбить длинную программу на составные части - просто как книгу разбивают на главы. При этом основная программа становится похожей на оглавление.
  3. Бывают сложные частные алгоритмы. Полезно отладить их отдельно в небольших тестирующих программах. Включение программ с отлаженными алгоритмами в основную программу будет легким, если они оформлены как подпрограммы.
  4. Все, что Вы сделали хорошо в одной программе, Вам захочется перенести в новые. Для повторного использования таких частей лучше сразу выделять в программе полезные алгоритмы в отдельные подпрограммы.

Подпрограммы могут быть стандартными, т.е. определенными системой, и собственными, т.е. определенными программистом.

Стандартная подпрограмма (процедура или функция) - подпрограмма, включенная в библиотеку программ ЭВМ, доступ к которой обеспечивается средствами языка программирования. Вызывается она по имени с заданием фактических параметров с типом описанным при описании данной процедуры в библиотечке процедур и функций.

Из набора стандартных процедур и функций по обработке одного типа информации составляются модули. Каждый модуль имеет своё имя (мы уже хорошо знакомы с модулями Crt, Graph). Доступ к процедурам и функциям модуля осуществляется при подключении этого модуля (Uses Crt, Graph).

Help содержит подробные описания предусмотренных средой программирования процедур и функций. Для вызова помощи при работе со стандартными процедурами и функциями нужно поставить на имя подпрограммы курсор и нажать клавиши. Описание процедур и функций в Help строится по стандартному принципу.




Поделиться с друзьями:


Дата добавления: 2015-04-24; Просмотров: 710; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.