![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Назначение. Обращение к процедуре - есть использование процедуры, т.е
Обращение к процедуре - есть использование процедуры, т.е. запуск ее на выполнение. С точки зрения использования процедуры важны не знания о действиях, которые входят в состав процедуры, а информация о - назначении процедуры; - имени процедуры; - перечне входных и выходных данных (этот перечень называется списком формальных параметров). Эта информация может быть почерпнута из документации на программное обеспечение (при использовании стандартных или библиотечных процедур) или из раздела описаний собственных процедур и функций (если программист сам писал текст процедуры). Для обращения к процедуре необходимо указать имя вызываемой процедуры и задать входные и выходные параметры, над которыми и производятся действия при данном запуске процедуры на выполнение. В этом случае говорят, что необходимо задать список фактических параметров. Обратите внимание, перечень входных и выходных параметров указанных в описании процедуры называется списком формальных параметров. Изображение обращения к процедуре (вызов процедуры) в схемах алгоритма приведено на рис. 11.6. Рис. 11.6. – Элемент " предопределенный процесс" На этом рисунке ИП - имя вызываемой процедуры, СФАП - список фактических параметров, перечисленных через запятую. Для обращения к процедурам ввода-вывода есть специальные элементы схем алгоритмов. При обращении к процедуре список фактических параметров должен соответствовать списку формальных параметров по - - количеству, - - порядку следования, - - типу и виду каждого параметра. Разберем это соответствие на простом примере. Допустим, имеется процедура, назначение которой: вычисление площади треугольника по трем заданным сторонам. Имя этой процедуры: РLTR; Список формальных параметров следующий: первый параметр - входной, первая сторона треугольника, типа REAL; второй параметр - входной, вторая сторона треугольника, типа REAL; третий параметр - входной, третья сторона треугольника, типа REAL; четвертый параметр - выходной, площадь треугольника, типа REAL. И нам необходимо вычислить площадь прямоугольника со сторонами 5.7, 2.9 и 3.0. Для этого обратимся к процедуре РLTR со следующим списком фактических параметров: первый параметр - число 5.7 типа REAL; второй параметр - число 2.9 типа REAL; третий параметр - число 3.0 типа REAL; четвертый параметр - имя переменной, куда должен быть помещен результат вычисления, например, переменная S типа REAL. Этот вызов в схеме алгоритма приведен на рис. 11.7. Рис. 11.7. – Вызов процедуры PLTR Задав такой список фактических параметров, мы выполнили требования его соответствия списку формальных параметров: q по количеству - 3 параметра; q по порядку следования o первый параметр - входной параметр, задающий размер первой стороны треугольника; o второй – входной параметр, задающий размер второй стороны треугольника; o третий - входной параметр, задающий размер третьей стороны треугольника; o четвертый - выходной параметр, задающий переменную, в которую должен быть помещен результат вычисления; q по типу каждого фактического параметра, соответствующему типу формального параметра (в нашем примере все типа REAL). Для соответствия по виду определим, какие виды параметров бывают. Различают три вида параметров: - - параметры-значения; - - параметры-переменные; - - параметры-константы. Последний вид параметров определен только в Турбо Паскале. Эта классификация определяется назначением и соответствием фактических параметров формальным. Параметр называется параметром-значением, если на месте формального параметра при обращении к подпрограмме в качестве фактического параметра должно выступать конкретное значение, то есть фактическим параметром может быть выражение. В этом случае фактическое выражение в начале вычисляется, а затем полученное значение передается в подпрограмму. Параметры значения - это только входные данные подпрограммы простого, строкового типа или ссылочного типа. Параметр называется параметром-переменной, если на месте формального параметра при обращении к подпрограмме в качестве фактического параметра может выступать только переменная, задающая участок оперативной памяти, с которым работает подпрограмма. Параметры-переменные - это всегда выходные данные подпрограммы, либо входные сложного (структурированного) типа. Параметр-константа означает, что на месте формального параметра такого вида при вызове подпрограммы может стоять только имя переменной, существующей в блоке, из которого вызывается подпрограмма. Параметры-константы это входные данные сложного типа (кроме строкового и ссылочного), так как в процессе выполнения подпрограммы изменять значения этих переменных невозможно. В нашем примере первый параметр - параметр-значение, т.к. фактическим параметром, в принципе, может быть любое арифметическое выражение, дающее вещественный результат (у нас 5.7). Второй и третий параметры (у нас значения 2.9 и 3.0) также параметры-значения. А четвертый параметр - параметр-переменная, т.к. это выходной параметр, и он должен задавать участок оперативной памяти, в который помещается результат работы процедуры.
|