- •1.1.2 Структура функцій програми
- •1.1.3 Правила синтаксису
- •1.1.4. Типи даних
- •1.1.5. Функції введення та виведення даних
- •1.2 Приклад програми Умова задачі
- •Особливості використання функцій вводу та виводу
- •1.3 Технологія виконання лабораторної роботи
- •1.4. Варіанти завдань
- •1.5 Контрольні запитання
- •Розгалужені обчислювальні процеси Лабораторна робота 2
- •2.1 Теоретичні відомості
- •2.1.1. Вибір із двох альтернатив
- •2.1.2. Вкладеність конструкцій вибору
- •2.1.3. Операторний блок
- •2.1.4. Поліваріантний вибір
- •2.2. Приклади програм
- •2.3. Варіанти завдань
- •2.4 Контрольні запитання
- •Циклічні обчислювальні процеси Лабораторна робота 3
- •3.1 Теоретичні відомості
- •3.1.1. Цикл із передумовою
- •3.1.2. Цикл із постумовою
- •3.1.3. Цикл із лічильником
- •3.1.4. Переривання та продовження циклу
- •3.2. Приклад алгоритму та програми
- •3.3. Варіанти завдань
- •3.4 Контрольні запитання
- •Цикли з розгалуженням Лабораторна робота 4
- •4.1 Теоретичні відомості
- •4.1.1. Рекурентні співвідношення
- •4.1.2. Функції користувача
- •4.2. Приклад алгоритму та програми
- •Алгоритм задачі
- •Код програми
- •4.3. Варіанти завдань
- •4.4 Контрольні запитання
- •Рекурсивні функції Лабораторна робота 5
- •5.1 Теоретичні відомості
- •5.2. Приклад алгоритму та програми
- •5.3. Варіанти завдань
- •6.1.2. Оголошення та ініціалізація
- •6.1.3. Операції над покажчиками
- •6.1.4. Методи розв’язанні нелінійних рівнянь
- •6.2. Приклад алгоритму та програми
- •6.3. Варіанти завдань
- •6.4 Контрольні запитання
- •Одновимірні масиви Лабораторна робота 7
- •7.1 Теоретичні відомості
- •7.2. Приклад алгоритму та програми
- •Алгоритм програми
- •Код програми
- •7.3. Варіанти завдань
- •7.4 Контрольні запитання
- •Багатовимірні масиви Лабораторна робота 8
- •8.1 Теоретичні відомості
- •8.1.1. Оголошення багатовимірних масивів. Доступ до елементів
- •8.1.2. Базові операції обробки двовимірних масивів
- •8.2. Приклад алгоритму та програми
- •8.3. Варіанти завдань
- •9.1.2. Деякі функції обробки рядків
- •9.2. Приклад алгоритму та програми
- •9.3. Варіанти завдань
- •9.4 Контрольні запитання
- •Структури та масиви структур Лабораторна робота 10
- •10.1 Теоретичні відомості
- •10.2. Приклад алгоритму та програми
- •Алгоритм задачі
- •Приклад коду
- •10.3. Варіанти завдань
- •10.4 Контрольні запитання
4.1.2. Функції користувача
Функція користувача містить оператори, що логічно не залежать від іншого коду програми, і може викликатися з будь-якого місця програми довільну кількість разів. Формат функції визначає її заголовок та тіло, яке містить оператори відповідно до алгоритму. Визначення функції передбачає наявність заголовка та тіла. Функцію без заданого прототипу визначають перед функціями, які її викликають, а ту, що має прототип, можна визначати в будь-якому місці програми. Функція має повернути тільки одне визначене значення до основної програми. Тип значення, що повертається, визначається у заголовку функції.
Оголошення функції (прототип) задається у вигляді:
тип_значення_що_повертається ім'я_функції (тип_параметра ім'я_параметра1, тип_параметра ім'я_параметра2);
Визначення функції містить її код виконання. Заголовки функції при оголошенні та визначенні збігаються. Не ставиться символ ; наприкінці заголовка. Для повернення значення з функції в тілі функції необхідно мати оператор повернення return.
Приклад визначення найбільшого з двох чисел:
float max(float a,float b) //заголовок функції з параметрами {
float m; //найбільше значення m =(a>b)?a:b; //умовний вираз return m; //значення, що визначилося та повертається
}
Функцію можна оголосити у вигляді:
void ім'я_функції(void);
Тип void значення, що повертається, означає, що така функція не повертає ніякого значення. Оператор return не потрібний. Тип void у списку параметрів означає, що функція не має параметрів.
Функція виконує закодовані в ній дії за допомогою оператора виклику. У процесі визначення функції у заголовку описуються формальні параметри, які замінюються на аргументи під час виклику функції. Якщо функція не повертає значення у точку виклику, формат оператора її виклику має такий вигляд:
ім'я_функції(аргументи);
Якщо функція повертає будь-яке значення, то під час її виклику це значення треба присвоїти змінній відповідного типу. Формат оператора виклику такий:
ім'я_змінної = ім'я_функції(аргументи);
Для виконання лабораторної роботи необхідно використовувати ряди, які представляють функції (табл. 4.1).
Таблиця 4.1 Рекурентні формули розвинення функцій у ряди
-
Функції
Розвинення у ряд Тейлора
sin(x)
x - x3/3! + x5/5! - x7/7! +...
cos(x)
1 - x 2/2! + x4/4! - x6 /6! +...
arctg(x)
x - x3/3 + x5/5 - x7/7 +...
ln (x)
(x-1) - (x-1)2/2 + (x-1)3/3 - (x-1)4/4+...
ex
1 + x / 1! + x2 / 2! + x3 / 3! + ...
e-x
1 - x/1! + x2/2! - x3/3! + x4/4!-...
sh (x)
x + x3/3! + x5/5! + x7/7! +...
x1/2
y0=1, yn+1 = 1/2*(yn+x/yn), n = 0, 1, 2,…