- •1.Общая характеристика языка Паскаль
- •2.Основные элементы языка Паскаль
- •3.Структура программы на языке Турбо Паскаль
- •4.Технология программирования
- •6.Понятие типа данных в Турбо Паскаль
- •Простые типы данных
- •Численные (арифметические) выражения
- •Логические выражения
- •Символьные выражения
- •1. Оператор присваивания.
- •2. Оператор ввода данных.
- •3. Оператор вывода данных.
- •3. Операторы повторений
- •2.2 Оператор цикла с постусловием
- •2.3. Оператор цикла со счетчиком
- •25. 7.11. Что такое вложенные циклы?
- •29.Строковый тип данных в языке Pascal
- •30.Строковые операции
- •4.2. Описание и вызов процедур.
- •4.3. Описание функции.
- •4.4. Формальные и фактические параметры.
- •Параметры-значения.
- •Параметры-переменные.
- •Параметры-константы.
- •Параметры-процедуры и параметры-функции.
- •4.5. Область действия имен.
- •4.6. Процедуры и функции без параметров.
- •4.7. Рекурсивные процедуры и функции.
- •4.8. Предварительно-определенные процедуры.
- •Описание множественного типа данных Паскаля
- •Операции над множественными типами Паскаля
- •Операции отношения множественных типов Паскаля
4.2. Описание и вызов процедур.
Для реализации многократно повторяющихся участков вычислений и для обеспечения модульности программ в языке Турбо Паскаль предусмотрена возможность использования процедур и функций.
Процедура - это поименованное сложное действие, которое представляет собой совокупность операторов, вычисляющих некоторое число результатов в зависимости от некоторого числа аргументов.
Процедура или функция (общее название - подпрограмма) определяется в разделе описаний основной программы или другой процедуры(функции). Процедура(функция) имеет ту же структуру, что и основная программа, т.е. состоит из заголовка, описательной части и выполняемой части.
Синтаксис заголовка процедуры:
PROCEDURE < имя процедуры > [( <список формальных параметров >)];
Например :
PROCEDURE PR1 ( A,B,C : INTEGER; VAR S: REAL);
Здесь PR1 - имя процедуры, а А,В,С,S - имена переменных, являющих-ся параметрами.
В отличие от основной программы заголовок в процедуре обязателен, но завершается процедура не точкой, а точкой с запятой. Описание процедуры выполняется с формальными параметрами.
Оператор процедуры служит для вызова процедуры из основной программы или из другой процедуры(функции).
Вызов осуществляется в следующей форме:
<имя процедуры > [(<список фактических параметров>)];
Таким образом, для приведенного заголовка процедуры можно написать такой оператор вызова:
PR1 (A,B,C,S);
Формат списка параметров в заголовке процедуры и при вызове процедуры отличаются. При вызове переменные, константы или выражения следуют через запятую, а в заголовке запись переменных напоминает объявление переменных в разделе описания переменных. Для всех элементов списка должен быть указан тип данных. Несколько переменных, отнесенных к одному типу , пишутся через запятую, а группы переменных различного типа отделяются точкой с запятой. После обращения к процедуре управление передается на выполнение следующего за вызовом процедуры оператора.
наверх
4.3. Описание функции.
Функция предназначена для вычисления какого-либо одного значения и используется в выражениях аналогично стандартным функци-ям.
Синтаксис заголовка функции:
FUNCTION < имя функции >[(<список формальных параметров>)]: <тип результата>;
Например:
FUNCTION PRF (A,B,C: INTEGER) : REAL;
Отличие описания функции от процедуры:
результатом обращения к функции может быть одно единственное значение;
идентификатор результата не указывается в списке формальных параметров;
в выполняемой части функции , хотя бы один раз , имени функции должно быть присвоено значение результата ( чаще всего перед выходом из функции);
после списка формальных параметров задается тип результата;
после обращения к функции управление передается на выполнение следующей операции данного выражения (в соответствии с приоритетом).
Для вызова функции используется указатель функции (имя функции со списком фактических параметров), который обязательно должен входить в какое-либо выражение (в правой части оператора присваивания, в операторе вывода, в условном операторе и т.д.). Для приведенного заголовка функции вызов функции может быть одним из следующих вариантов:
S:=PRF ( A,B,C); Writeln ( PRF ( A,B,C)); If PRF ( A,B,C)>20 then K=K+1; |
наверх
