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

Лабораторна робота №7

Тема роботи: Програмування з використанням функцій

Мета роботи: Формування навиків в розробці та використанні функцій для структуризації програми при розробці складних алго­ритмів обробки даних.

Для виконання роботи необхідно знати:

  • поняття функції та синтаксис її опис;

  • рекурсивні функції;

  • перевантажені функції;

  • фактичні та формальні параметри;

  • вказівники і адреси змінних, їх використання та основні операції з ними.

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

Програма на мові С++ є сукупністю функцій. Функції викорис­то­вують для структурування складної програми, особливо коли одну і ту ж саму послідовність операцій необхідно виконати кілька разів.

Функція – це закінчений модуль, що містить деяку послідовність операторів, оформлених таким чином, що її можна викликати в будь-якому місці програми та служить для розв’язку певної локальної задачі. Особливістю програми на мові C++ є те, що вона обов’язково містить одну головно функцію main (головна). Інші функції є рівноправними по відношенню одна до одної, але головною завжди залишається функція main.

Загальний синтаксис опису функції є наступним:

<тип> <імя_функції>(<список_аргументів>)

{

<тіло функції, що складається із набору операторів>

return <значення,що повертається в головну функцію>;

}

де:

<тип> – задає тип значення, що повертається, та може бути будь-яким допустимим в мові C++;

<імя_функції> – утворюється аналогічно до правил побудови ідентифікаторів змінних;

<список_аргументів> – список формальних параметрів, розді­ле­них комами;

<тіло функції> – набір операторів, які реалізують алгоритм ро­бо­ти функції;

<значення,що повертається> – результат роботи функції – зна­­чення, яке повертається в головну програму за допомогою оператора return. За типом воно повинно відповідати типу самої функції. У головну програму також жодне значення може і не повертатися – тоді вико­ристовується ключове слово void (ніякий).

При виклику функції на місці формальних параметрів повинні сто­яти фактичні параметри відповідного типу: при цьому передаються тільки значення відповідних параметрів, які змінені бути не можуть. Значення формальних параметрів можна задавати і по замовчуванню: якщо такий параметр буде відсутній при виклику функції, то для нього буде взято зна­чення по замовчуванню. Всі такі параметри повинні стояти в кінці спис­ку формальних параметрів. Наприклад (функція для піднесення числа a до степені n. При відсутності степеня (n) число підноситься до квад­рату):

float stepin(float a, int n=2)

stepin(float a,)/* виклик функції для піднесення числа а до квадрату */

Глобальні змінні може використовувати будь-яка функція. Змінні, що ініціалізовані в функції є локальними і видимі тільки в її межах.

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