- •Методичні вказівки до лабораторних робіт по курсам
- •8.092402 “Інформаційні мережі зв'язку” Затверджено
- •Протокол № __ від ____
- •Упорядники: в. П. Степанов в. П. Пчелінов
- •Загальні положення
- •1 Організація введення і виведення даних та розв’язання задач з простою змінною
- •1.1 Мета роботи
- •1.2 Вказівки до організації самостійної роботи студентів
- •1.2.1 Використання операторів введення
- •For ( [ вир1; ] [ вир2] [; вир3 ] ) оператор;,
- •1.5 Контрольні питання
- •1.6 Варіанти індивідуальних завдань
- •2 Розв’язання задач c використанням одновимірних і двовимірних масивів
- •2.1 Ціль роботи Прищепити студентам навички розв’язання задач з використанням одновимірних і двовимірних масивів, складних циклів і використання покажчиків.
- •2.2 Методичні рекомендації з організації самостійної роботи студентів
- •2.3 Використання покажчиків
- •Наиведемо програму з використанням покажчиків:
- •Int main ( )
- •Void main ( void )
- •2.4 Використання масивів і покажчиків
- •Приклад 2.4 Обчислити середнє значення позитивних елементів одновимірного масиву.
- •Int *pmas;
- •2.5 Масиви покажчиків
- •2.6 Контрольні питання
- •2.7. Варіанти індивідуальних завдань
- •3 Вирішування задач з використанням даних символьного типу
- •3.1 Ціль роботи Вивчення способів опису символьних типів даних і використання структур для обробки даних.
- •3.2 Методичні рекомендації з організації самостійної
- •Роботи студентів
- •3.2.1 Організація символьного введення - виведення
- •Device . Get (char_var);
- •3.2.2 Рядки як символьні масиви
- •3.2.3 Введення-виведення символьних масивів
- •Void main (void)
- •3.2.4 Основні функції обробки символьних типів
- •Void main (void)
- •Void del (char *st, int k, int n);
- •Void del(char *st, int, int);
- •Void main()
- •Void del(char *st,int k,int n)
- •[ Проміжки ] [знак числа] [ цифри].
- •Void main( )
- •Void main()
- •Void main()
- •Void main(void)
- •3.2 Контрольні питання і завдання
- •3.4 Варіанти індивідуальних завдань
- •4 Вирішувння задач з використанням даних типу структура
- •4.1 Ціль роботи Освоєння заходів розробки і налагодження програм з використанням
- •4.2 Методичні рекомендації з організації самостійної
- •Void main(void)
- •Void qsort (void *base , n , width,
- •Int (*fcmp) ( const void *elem1, const void *elem2) .
- •4.3 Контрольні питання
- •4.4. Індивідуальні завдання
- •5 Використання функцій при розробці програм
- •5.1 Ціль роботи
- •5.2 Методичні вказівки з організації самостійної роботи студентів
- •Void fun ( int p)
- •Void main ( )
- •Int main ( )
- •5.2.1 Використання покажчиків на функцію
- •Void main ( )
- •5.2.2 Використання масивів - параметрів функцій
- •Vоid sort (int mas [ 30 ]); .
- •Void sort ( int mas [ ], int n ) ; .
- •Void fun1 (char st [ 5]);
- •Void fun1 ( char st [5] )
- •Void fun2 ( int mat [ ] [10], int rows, int cols );
- •5.2.4 Звертання до функції і передача результату
- •Int main ( )
- •5.2.5 Перевантаження функцій
- •5.3 Контрольні питання
- •5.4 Варіанти індивідуальних завдань
- •6 Робота з файлами
- •6.1 Ціль роботи
- •6.2 Методичні вказівки по організації самостійної роботи
- •Void main ( )
- •Ifstream in ( ”file1") ;
- •Література і джерела
- •Загальні положення ...………………………………………………………….........3
- •Навчальне видання
- •8.092402 “Інформаційні мережі зв'язку”.
- •61726 Харків, просп. Леніна, 14.
5 Використання функцій при розробці програм
5.1 Ціль роботи
Придбання навичок складання і використання функцій при розробці програм.
5.2 Методичні вказівки з організації самостійної роботи студентів
При підготовці до роботи варто вивчити матеріал з організації і використанню функцій [ 1, с.80-97; 3, c.169 –230; конспект лекцій ].
Звернути увагу на те, що програма мовою С++ складається з розділу визначень (описів) і набору однієї чи декількох функцій.
Функція це логічно завершена сукупність описів і операторів, призначених для виконання визначеної задачі.
У мові С++ немає розподілу на основну програму і підпрограми, на процедури і функції і т.д. Однак серед функцій повинна бути одна з ім'ям main , що може знаходитися в будь-якім місці програми. Ця функція виконується завжди першою і закінчується останньою. Будь-яка функція має однакову структуру, що має вигляд :
[тип результату ] ім'я функції ([список формальних аргументів])
{
// тіло функції
опису даних ;
оператори ;
[return] [вираз];
}
тут квадратні дужки ( [ ] ) , як звичайно вказують, що укладена в них конструкція може бути відсутньою ;
тип результату будь-який базовий або раніше описаний тип значення, яке повертається функцією (необов'язковий параметр), якщо він відсутній, тоді тип результату буде цілий (int); цей параметр може бути описаний ключовим словом (void), у цьому випадку функція не повертає ніякого значення (результату). Якщо параметр заданий із зірочкою (*) функція повертає покажчик на об'єкт, або на одержання адреси об'єкта (& ) (в операторі return);
ім'я функції будь-яке ім'я, що складається з літер, цифр і знака "_" (підкреслення), що починається літерою або знаком "_", або ім'я main за ім'ям функції завжди повинна стояти пари круглих дужок ( ), у яких записуються формальні параметри, а якщо їхній ні, тоді порожні дужки. Варто мати на увазі, що фактично ім'я функції це особливий вигляд покажчика на функцію, його значенням є адреса початку входу у функцію;
список формальних аргументів визначає кількість, тип і порядок проходження переданих у функцію вхідних аргументів, що друг від друга розділяються комою . У випадку, коли список відсутній, це поле буде порожнім ( ), або містити ключове слово ( void ) . Формальні параметри функції цілком локалізовані в ній і недоступні для будь-яких інших функцій .
Список формальних аргументів повинний мати наступний вигляд:
( [const] тип 1 [параметр 1] , [const] тип 2 [параметр 2],. . . )
У цьому списку не можна групувати параметри одного типу, указавши їхній тип одного разу, для кожного параметра треба вказувати його тип. Слово const повідомляє компілятору, що значення параметра не повинне зміняться функцією ( це необов'язковий атрибут).
За замовчуванням усі формальні параметри передаються за значенням, тобто якщо вони змінюються в тілі функції, то за її межами залишаються без зміни, оскільки передаються не самі значення, а їхні копії. Ці копії створюються усередині функції, це ілюструє ,наприклад, такий фрагмент програми:
