Шпаргалка: Вопросы и ответы к экзаменам В-1
Текст основной программы
END.
19. Подпрограммы. Применение. Структура описания. Отличие процедуры от функции.
Самостоятельные, законченные фрагменты программы, оформленные особым образом, снабжённые именем – называются подпрограммами
Использование подпрограмм позволяет разбить программу на ряд независимых частей.
Подпрограммы используются:
1Для экономии памяти, когда некоторая последовательность действий встречается неоднократно на разных участках программы. Каждая подпрограмма существует в ед. экземпляре, но обращаться к ней можно неоднократно из разных точек программы.
2. В сложных программах при модульном проектировании.
Подпрограммы делятся на процедуры и функции
Результатом исполнения функции является единственное значение простого, строкового или указательного типа. Поэтому обращение к функции можно использовать выраженное наряду с константой и переменные.
Процедура обычно возвращает несколько значений, подпрограмма состоит из заголовка и тела подпрограммы.
Тело подпрограммы состоит из раздела описаний и раздела операторов.
Структура: PROCEDURE<имя процедуры >;
FUNCTION<имя функции>(параметр: тип);
USES<модули>;
LABEL<метки>;
CONST<константы>;
TYPE<типы>;
VAR<переменные>;
BEGIN
Тело подпрограммы
END;
20. Вложенные подпрограммы. Принципы локализации имен (локальные и глобальные переменные).
Вложенными являются подпрограммы, вызываемые из других подпрограмм.
Если какая либо программа использует некоторые переменные подпрограммы,
То данные переменные должны быть описаны не в подпрограмме, а в самой программе. Данные переменные называются глобальными, а переменные, объявленные в модуле или подпрограмме являются локальными, и значения этих временных нельзя использовать в главной программе.
21. Вызов подпрограмм (формальные и фактические параметры).
Подпрограммы могут быть вызваны как из тела основной программы, так и из тела другой подпрограммы. Для вызова необходимо написать имя процедуры или функции, а также, если надо, ряд переменных передаваемых в подпрограмму.
Пример:
PROCEDURE<имя>[(<формальные параметры>)];
FUNCTION<имя>[(<формальные параметры>)]:<тип>
Сразу за заголовками может следовать одна стандартных директив: ASSEMBLER <тело подпрограммы на ассемблере>, EXTERNAL<объявление внешней подпрограммы>, FAR, FORWARD, INLINE<встроенные машинные инструменты>, INTERRUPT,NEAR.