- •1.Использование компьютерных технологий в медицине
- •2. Языки программирования. Этапы разработки программ
- •3. Оболочка среды программирования; структура и назначение компонентов оболочки. Особенности построения rad программ
- •4. Стандартные и производные от них типы данных. Константы, их назначение, определение
- •5. Операции с переменными и возвращаемый результат
- •6. Условные операторы, структура, обозначения, возможные проблемы использования
- •7. Стандартные функции, функции преобразования типов
- •8. Операторы цикла, структура, обозначение, возможные проблемы использования
- •9. Этапы отладки программы
- •10. Создание и описание новых типов данных
- •11. Тип данных массив, описание, возможные действия с массивами
- •Вывод массива; ввод массива; поиск максимального или минимального элемента массива; поиск в массиве заданного элемента; сортировка массива.
- •12.Алгоритм поиска элементов в массиве. Алгоритмы сортировки
- •13. Графические примитивы; пропорциональная печать изображения с экрана
- •14. Способы построения мультипликации
- •15. Символы и строки, операции со строками
- •16. Тестовая информация, принципы работы с текстовым файлом
- •17. Составные типы данных, принципы работы
- •18. Процедуры и функции, структура, передача параметров
- •19. Область действия идентификаторов при использовании процедур, функций
- •20. Классификация способов передачи параметров
- •21. Процедурные директивы, назначение
18. Процедуры и функции, структура, передача параметров
Процедуры — это конструкции программного кода, которые позволяют создавать в программном коде некоторые подпрограммы, которые выполняют определенные операции независимо от остального программного кода.
Процедура Delphi просто выполняет требуемые операции, но никаких результатов своих действий не возвращает. Результат - в тех изменениях, которые произошли в программе в процессе выполнения этой процедуры. В частности, процедура может поменять значения переменных, записать новые значения в ячейки компонентов, сделать запись в файл и т.д.
Заголовок состоит из ключевого слова procedure, за которым следует имя процедуры и, при необходимости, список параметров, заключенных в круглые скобки:
procedure ИМЯ (параметры);
Функции — это по сути те же процедуры, но только функции могут возвращать результат, т.е. какое-либо значение.
Процедуры создаются так же как и функции, но только заголовочное слово function
function ИМЯ (параметры);
Параметрыслужат для передачи исходных данных в подпрограммы и для приема результатов работы этих подпрограмм.
Параметры - это список идентификаторов, разделённых запятой, за которым через двоеточие указывается тип.
Исходные данные передаются в подпрограмму с помощью входных параметров, а результаты работы подпрограммы возвращаются через выходные параметры. Параметры могут быть входными и выходными одновременно.
Способы передачи параметров:
Const(объявления входных параметров; их значения не могут быть изменены внутри подпрограммы)
function Min(const A, B: Integer)
Out(объявление выходных параметров)
procedure GetScreenResolution(out Width, Height: Integer);
Var(параметр является одновременно и входным)
procedure Exchange(var A, B: Integer);
без них(предназначены для передачи и для приема данных любого типа)
procedure JustProc(const X; var Y; out Z);
Передачафактических аргументов в подпрограмму осуществляется через специальную область памяти -стек. В стек помещается либо значение передаваемого аргумента , либо адрес аргумента.
Имя |
Назначение |
Способ передачи |
- |
Входной |
Передается копия значения |
Const |
Входной |
копия значения/ссылка на значение |
Out |
Выходной |
Передается ссылка на значение |
Var |
Входной |
Передается ссылка на значение |
Если передается значение, то подпрограмма манипулирует копией аргумента. Если передается ссылка на значение, то подпрограмма манипулирует непосредственно аргументом, обращаясь к нему через переданный адрес.
19. Область действия идентификаторов при использовании процедур, функций
Идентификаторы – устанавливают соответствие между объектом и некоторым набором символов. Имя переменной
Область видимости переменной – это множество операторов, в которых данную переменную можно использовать.
Правила определения области действия для идентификаторов подпрограмм:
· действуют все идентификаторы, определенные внутри подпрограммы;
· действуют все идентификаторы окружающего контекста, если их имена отличаются от имен, объявленных внутри подпрограммы;
· локальные идентификаторы подпрограммы во внешнем окружении действовать не будут никогда;
· в случае совпадения имен глобального и локального идентификаторов действовать будет только внутренний локальный идентификатор.