Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Method_Lab_Work_ANSI_C__2010_lab1-10_v2.doc
Скачиваний:
39
Добавлен:
22.11.2018
Размер:
1.14 Mб
Скачать

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,…

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]