Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОАиП.doc
Скачиваний:
16
Добавлен:
15.11.2018
Размер:
435.2 Кб
Скачать

15. Опишите общую структуру функции в языке программирования Паскаль (Delphi). Запишите общий вид вызова функции. Перечислите основные отличия процедуры от функции.

Оформите в виде функции алгоритм вычисления степени y=xn с натуральным показателем.

Функция

Подпрограммой называется именованная логически законченная группа операторов языка, которую можно вызвать для выполнения по имени любое количество раз из различных мест программы.

В языке Pascal для организации подпрограмм используются процедуры и функции.

Если подпрограмма имеет только один выводимый параметр (результат), то её можно оформить в виде функции.

Функция аналогична процедуре, но имеются два отличия: функция передает в точку вызова результат своей работы; имя функции может входить в выражение как операнд. Функция, если она встречается в выражении, называется указателем функции или обращением к функции.

Описание функции:

Function <имя>[(<список формальных параметров>)]:<имя-типа>;

[<раздел описаний>]

Begin

...

<имя> := <выражение>

End;

где Function - служебное слово, определяющее заголовок подпрограммы-функции; <имя> - имя функции; <список формальных параметров> - перечень имен для обозначения аргументов функции с указанием их типа; <имя-типа> - определение типа (скалярного) возвращаемого значения; <раздел описаний> - раздел локальных описаний, используемых в функции; Begin, End - служебные слова, ограничивающие содержательную часть функции.

Вызывается функция по её имени с указанием фактических параметров. При этом вызов функции можно делать непосредственно внутри выражения, подобно тому, как используются стандартные встроенные функции, например, квадрат — SQR(X).

Function Step2(n : integer, х : real): real;

Var

i: integer;

у: real;

Begin {Step2}

y:=1;

for i := 1 to n do

у := y*x;

Step2 := у

End; {Step2}

16. Дайте определение понятия «модуль» (unit). Опишите структуру Unit-a (разделы interface, implementation).

Разработайте программу для вычисления произведения всех элементов матрицы 10x10. Целые числа генерируются случайным образом.

Модули

Модуль - автономно компилируемая программная единица, представляющая собой библиотеку описаний типов данных, переменных, констант, процедур и функций. Наличие модулей позволяет разрабатывать и отлаживать программу по частям.

1. Структура модуля

Рассмотрим общую структуру модуля:

Unit <имя>; {Заголовок модуля}

Interface {Интерфейсная секция}

Uses <список_модулей>; {необязателен} <открытые_описания>

Implementation {Исполняемая часть}

Uses <список_модулей>; {необязателен} <закрытые_описания>

<процедуры_и_функции>

Begin {Секция инициализации}

<код_инициализации>

End.

Здесь

UNIT - зарезервированное слово (единица); начинает заголовок модуля;

<имя> - имя модуля (правильный идентификатор);

INTERFACE - зарезервированное слово (интерфейс); начинает интерфейсную часть модуля;

IMPLEMENTATION - зарезервированное слово (выполнение); начинает исполняемую часть;

BEGIN - зарезервированное слово; начинает инициализирующую часть модуля;

конструкция BEGIN <секция инициализации> необязательна;

END - зарезервированное слово - признак конца модуля.

Таким образом, модуль состоит из заголовка и трех составных частей, любая из которых может быть пустой.