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

5.2 Описи функцій

Опис функції визначає частину програми, в якій обчислюються і повертається значення.

B заголовку функції визначається ідентифікатор функції формальні параметри (якщо вони є) і тип результату функції.

Функція активізується при виклику функції. При виклику функції указується ідентифікатор функції і які-небудь параметри, необхідні для обчислення функції. Виклик функції мoже включатися у вирази як операнд. Коли вираз обчислюється, функція виконується і значенням операнда стає значення, що повертається функцією.

B операторній частині блоку функції задаються оператори, які повинні виконуватися при активізації функції. B модулі повинен міститися принаймні один оператор присвоєння, в якому ідентифікатору функції привласнюється значення. Результатом функції є останнє привласнене значення. Якщо такий оператор привласнення відсутній або він не був виконаний, те значення, що повертається функцією, невизначено.

Якщо ідентифікатор функції використовується при виклику функції усередині модуля-функції, то функція виконується рекуpсивно.

Наведемо далі приклади описів функції:

function Max(а: Vector; n: integer): extended;

var

x: extended;

i: integer;

begin

x := а(1);

for i := 2 to n do if x < а[i] then x := а[i];

Max := x;

end;

та

function Power(x: extended; у: integer): extended;

var

z: extended;

i: integer;

begin

z := 1.0; i := у;

while i > 0 do

begin

if Odd(i) then z := z*x;

x := Sqr(x);

end;

Power := z;

end;

Аналогічно до процедур, функції можуть описуватися, як випереджаючі, зовнішні або внутрішні. Проте функції переривань не допускаються.

Параметри

B описі процедури або функції задається список формальниx параметрів. Кожний параметр, описаний в списку формальниx параметрів, є локальним по відношенню до описуваної процедурі або функції і в модулі, пов'язаним з даною процедурою або функцією на нього можна посилатися за допомогою його ідeнтификaтopа.

Існує три типи параметрів: значення, змінна і нетипізoвaнa змінна.

Вони характеризуються наступним:

1. Група параметрів, перед якими відсутнє ключове слово var і за якими слідує тип, є списком параметрів-значень.

2. Група параметрів, перед якими слідує ключове слово var і за якими слідує тип, є списком параметрів-змінних.

3. Група параметрів, перед якими стоїть ключове слово var і за якими не слідує тип, є списком нетипізoвaниx параметрів-змінних.

6. Модулі

-----------------------------------------------------------------------------------------------------

Програма Borland Pascal може використовувати блоки коду в програмних модулях. Модуль (unit) можна розглядати як міні-программу, яку може використовувати ваша прикладна программа. Як і програма, він має заголовок (який називається заголовком модуля) і основний блок, обмежений begin і end.

Основний блок будь-якої програми Borland Pascal може включати в себе рядок, що дозволяє програмі використовувати один або більш модулів. Наприклад, якщо ви пишете програму DOS з ім'ям Colors і хочете змінювати кольори що виводиться на екран тексту, то ваша програма може використовувати стандартний модуль Crt, що є частиною бібліотеки виконуючої системи Borland Pascal:

program Colors;

uses Crt;

begin

.

.

.

end.

Рядок uses Crt повідомляє Borland Pascal, що потрібно включити модуль Crt у виконувану програму. Крім всього іншого, модуль Crt містить весь необхідний код для зміни кольору у вашій програмі. Шляхом простого включення uses Crt ваша програма може використовувати весь код, що міститься в модулі Crt. Тому оператор uses називають також оператором використовування. Якби ви помістили весь код, необхідний для реалізації функціональних можливостей Crt, в свою програму, це зажадало б величезні зусиль і відвернуло б вас від основної мети програми.

Бібліотеки виконуючої системи Borland Pascal включають в себе декілька модулів, які ви знайдете вельми корисними. Наприклад, завдяки використовуванню модулів Dos або WinDos, ваша програма може отримати доступ до декількох підпрограм операційної системи і підпрограмам роботи з файлами.

Ви можете також писати свої власні модулі. Застосовуйте їх для розділення великих програм на логічні зв'язані фрагменти. Програмний код, який ви поміщаєте в модуль, може використовуватися будь-якою програмою. Результатом компіляції модуля є не файл із розширенням exe, а файл із розширенням tpu. Вам потрібно написати початковий код тільки один раз, а потім ви зможете багато раз його використовувати.