Рейтинг користувача: 5 / 5

Активна зіркаАктивна зіркаАктивна зіркаАктивна зіркаАктивна зірка
 

ПІДПРОГРАМИ

МЕТОДИЧНІ ВКАЗІВКИ

до лабораторної роботи № 7

з дисципліни ”Алгоритмізація та програмування”

для студентів спеціальності 122 ”Комп’ютерні науки”

 

Затверджено

на засіданні кафедри інформаційних систем та мереж

Протокол №__ від _____.2018 р.

Львів-2018

 

Підпрограми: Методичні вказівки до лабораторної роботи № 7 / Укл.: В.А. Висоцька. – Львів: Видавництво Національного університету ”Львівська політехніка”, 2018. – 28 с.

Укладачі                     Висоцька В.А., к.т.н., доцент

                         

 

Відповідальний за випуск Литвин В.В., д.т.н., професор

Рецензенти     Верес О.М., к.т.н., доцент

                          Берко А.Ю., д.т.н., професор

                          Ришковець Ю.В., к.т.н., старший викладач

 

Мета роботи: ознайомитись із поняттям підпрограм на мовi Сі.

1.       Теоретичні відомості

1.1.          Поняття підпрограми

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

Функцією називають незалежну частину програми, яка має власне ім’я і може викликатися з інших частин програми, оперувати даними та повертати результат. Терміном “функція” ще називають метод, підпрограму, процедуру тощо.

Кожна C-програма має принаймні одну функцію – функцію main(). Крім неї, програма може містити необмежену кількість функцій, створених користувачем.

Існує два основні види функцій: стандартні (вбудовані) та функції створені користувачем.

Кожна функція складається з таких частин:

  • тип результату;
  • ім’я функції;
  • список параметрів;
  • тіло функції.

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

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

Виклик функції завжди позначається ім’ям функції та круглими дужками, в яких стоять змінні (константи, вирази), значення яких передаються (підставляються) замість аргументів. У випадку, коли функція не має аргументів, круглі дужки всеодно є обов’язковими.

1.2.          Параметри та їх види

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

<тип_результату> <ім’я_функції> ([<список_параметрів>]);

Список параметрів описується так:

<тип_параметра_1> [<параметр_1>]

[, <тип_параметра_2> [<параметр_2>]

...

[, <тип_параметра_N> [<параметр_N>]

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

При виклику функції у першу чергу обчислюються вирази, що стоять на місці фактичних параметрів; потім у стеку виділяється пам’ять під формальні параметри функції відповідно до їх типу і кожному з них присвоюється значення відповідного фактичного параметра. Тобто при виклику функції формальні параметри послідовно отримують значення фактичних: значен­ня першого фактичного аргументу копіюється у перший формальний аргумент, другий фактичний – у другий формальний і т.д. При цьому перевіряється відповідність типів і, за потреби, виконуються їхні перетворення. Тому дуже важливими є кількість, поря­док запису та відповідність типів усіх аргументів, інакше можуть виникнути помилки.

Функція може повертати або не повертати результат. Якщо вона не повинна повертати жодного значення, як тип її результату потрібно вказувати тип void. В іншому випадку типом результату функції є певний тип даних.

Якщо функція не має формальних параметрів, то вказують, що вона має один єдиний параметр типу void або ж позначають парою порожніх дужок, при цьому дужки є обов’язковими.

(Для ознайомлення з повним текстом статті необхідно залогінитись)