Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Подпрограммы (методы) в языках программирования. Формальные и фактические параметры. Глобальные и локальные переменные. Рекурсивное выполнение подпрограммы.⇐ ПредыдущаяСтр 18 из 18
Подпрограмма – это самостоятельный фрагмент программы, реализующий определённый алгоритм и допускающий многократное обращение к нему из различных частей программы. Язык Турбо Паскаль содержит два типа подпрограмм: 1. Процедуры 2. Функции. Процедуры в Паскале. Структура процедуры аналогична структуре программы и состоит из заголовка и блока (тела программы). Procedure < имя> (< список параметров>) < блок описаний> begin < тело процедуры> end; Структура процедуры почти полностью совпадает со структурой программы. Но имеются исключения: I. Заголовок начинается с зарезервированного слова Procedure, кроме того содержит список параметров. Параметры – это средства связи процедуры с программой и другими процедурами, механизм обмена данными. Параметры процедуры бывают двух видов: - параметры-значения, или входные параметры – это исходные, (входные) данные, передаваемые в процедуру. Их значения после окончания работы процедуры остаются неизменными. Описание параметров-значений: < имя>: < тип>. - параметры-переменные, или выходные параметры – это результаты работы процедуры, передаваемые обратно в программу или другую процедуру. Их значения поле окончания процедуры изменяются. Описание выходных параметров: Var < имя>: < тип>. Например, процедура может иметь такой заголовок: Procedure Calculate (x, y: integer; var z: integer, var f: real); Имя этой процедуры Calculate. Она имеет 4 параметра: два входных (или параметра значения) – это параметры x и y целого типа; два выходных (или параметра-переменных) – я целого типа и f вещественного типа, т.к. типы у них различны, перед описанием каждого указано зарезервированное слово Var. Блок описаний может содержать те же разделы, что и блок описаний программы (Const, Type, Var, Procedure, Function), за исключением описания подключения модулей библиотек Uses. Данные, описанные в блоке описаний процедуры, называются локальными и могут быть использованы только в процедуре. Данные, описанные в блоке описаний программы, называются глобальными и могут быть использованы как в самой программе, так и во всех её процедурах. Тело процедуры также представляет собой составной оператор, но заканчивается End; ВЫЗОВ ПРОЦЕДУРЫ может осуществляться из основной программы или процедуры, описанной после вызываемой. При вызове указывается имя процедуры и список фактических параметров, т.е. тех, которые будут подставлены на место формальных (используемых в списке параметров процедуры). Количество, порядок и типы фактических параметров должны совпадать с количеством, порядком и типами формальных параметров. Например, процедуру Calculate, заголовок которой был описан выше, можно вызвать следующим образом: Calculate (a, b, c, d); - при условии, что a, b, с имеют тип Integer, d – Real. Calculate(23, p+14, q, w); - если p и q имеют тип Integer, a w – Real. Практически всё сказанное о процедурах верно и для функций. Отличие функции от процедуры состоит в том, что функция не имеет выходных параметров, она возвращает единственное значение – это значение функции. Входные параметры называются ещё аргументами функции. Описание функции: Function < имя> (< список аргументов>): < тип значения функции>; < Блок описания локальных переменных> Begin < тело функции> End; В теле функции обязательно должна быть команда присваивания вида: < имя функции>: =< вычисленное значение>; Которая и позволит функции возвратить вычисленное значение. Например, опишем функцию вычисления среднего арифметического двух целых чисел: Function middle(a, b: integer): real; Begin Middle: =(a+b)/2 End; Процедуры и функции, производящие вызов «самих себя» называют рекурсивными. Рекурсией называется ситуация, когда какая-то подпрограмма прямо или через другие подпрограммы вызывает себя в качестве подпрограммы. Реализуемый при этом алгоритм называется рекурсивным. 41 Объектно-ориентированное программирование: класс, объект, поле, метод. Принципы объектно-ориентированного подхода. Их реализация в современных языках программирования.
42 Языки разметки HTML и XML. Каскадные таблицы стилей.
|