- •О.Ф.Тарасов, о.В.Алтухов
- •1 Заняття № 1 Вивчення інтегрованого середовища с
- •1.1 Теоретичні відомості
- •1.2 Хід роботи
- •1.3 Вимоги до звітів
- •1.4 Питання для контролю і самостійної роботи
- •2 Заняття № 2 Функції введення/виведення даних printf( ), scanf( ). Лінійні обчислювальні процеси
- •2.1 Теоретичні відомості
- •2.2 Хід роботи
- •2.3 Індивідуальне завдання до заняття №2
- •2.4 Питання для контролю і самостійної роботи
- •3 Заняття № 3 Розробка програм зі скалярними типами даних
- •3.1 Теоретичні відомості
- •Приклад
- •3.2 Хід роботи
- •3.3 Індивідуальне завдання до заняття № 3
- •3.4 Питання для контролю і самостійної роботи
- •4 Заняття № 4 Розробка програм з циклічними обчислювальними процесами
- •4.1 Теоретичні відомості
- •Алгоритм роботи оператора циклу for ( )
- •4.2 Хід роботи
- •4.3 Індивідуальне завдання до заняття № 4
- •4.4 Питання для контролю і самостійної роботи
- •5 Заняття № 5
- •Розгалуження обчислювального процесу.
- •Оператори, які реалізують розгалуження: if... Else, switch,
- •Умовна операція ( ? : )
- •5.1 Теоретичні відомості
- •Умовна тернарна операція ( ? : )
- •Оператор варіанта switch
- •Приклад
- •5.2 Хід роботи
- •5.3 Індивідуальне завдання до заняття № 5
- •5.4 Питання для контролю і самостійної роботи
- •6 Заняття № 6 Операції с, їхні пріоритети і використання. Перетворення типів
- •Пріоритет операцій і порядок виконання (асоційованість)
- •(Новий_тип) Операнд
- •Приклад
- •6.2 Хід роботи
- •6.3 Індивідуальне завдання до заняття № 6
- •6.4 Питання для контролю і самостійної роботи
- •7 Заняття № 7
- •7.1 Теоретичні відомості
- •Оголошення функцій (створення прототипів)
- •([ Список_типів_параметрів ])
- •Синтаксис визначення функцій
- •[ Return Значення_типу_що_повертається ]
- •Використання локальних і глобальних перемінних у функціях. Виклик функції
- •Приклад
- •7.2 Хід роботи
- •7.3 Індивідуальне завдання до заняття № 7
- •7.4 Питання для контролю і самостійної роботи
- •8 Заняття № 8
- •8.1 Теоретичні відомості
- •Основні операції з покажчиками
- •Покажчики і цілі величини
- •Динамічне розміщення покажчиків у пам'яті
- •Приклад
- •Приклад
- •8.2 Хід роботи
- •8.3 Індивідуальне завдання до заняття № 8
- •8.4 Питання для контролю і самостійної роботи
- •9 Заняття № 9
- •9.1 Теоретичні відомості
- •Приклад
- •9.2 Хід роботи
- •9.3 Індивідуальне завдання до заняття №9
- •9.4 Питання для контролю і самостійної роботи
- •10 Заняття № 10
- •10.1 Теоретичні відомості
- •Приклад
- •10.2 Хід роботи
- •10.3 Індивідуальне завдання до заняття № 10
- •10.4 Питання для контролю і самостійної роботи
- •Заняття №11 Обробка символьних даних
- •Теоретичні відомості
- •Індивідуальне завдання до заняття №11
- •Питання для контролю і самостійної роботи
- •Приклад
- •Хід роботи
- •Питання для контролю і самостійної роботи
- •Теоретичні відомості
- •Приклад
- •Індивідуальне завдання до завдання №13
- •Питання для контролю і самостійної роботи
- •Заняття № 14 Розробка програм зі складеними типами даних
- •Структури
- •Хід роботи
- •Питання для контролю і самостійної роботи
- •Заняття № 15 Використання покажчиків для роботи зі складеними типами даних (2години)
- •Теоретичні відомості
- •Приклад
- •Хід роботи
- •Питання для контролю і самостійної роботи
- •Використання покажчиків для роботи з функціями
- •Покажчики як параметри функції
- •[Const ] Тип * Ім'я_покажчика
- •Приклад
- •Хід роботи
- •Індивідуальне завдання до заняття №16
- •Питання для контролю і самостійної роботи
- •Використання функцій високого і низького рівня для роботи з потоками (файлами)
- •Функції для роботи з файлами
- •Хід роботи
- •Індивідуальне завдання до заняття №17
- •Питання для контролю і самостійної роботи
- •Розробка програм із багатофайловою структурою. Заголовочні файли. Класи пам'яті перемінних і функцій
- •Керування многофайловими проектами
- •Використання адміністратора проектів
- •Приклад
- •Основний файл проекту
- •Заголовний файл
- •Хід роботи
- •Індивідуальне завдання до заняття №18
- •Питання для контролю і самостійної роботи
- •Графічні функції
- •Графічні примітиви
- •Хід роботи
- •Індивідуальне завдання до заняття №19
- •Питання для контролю і самостійної роботи
- •Заняття№20 Розробка програм з використанням класів
- •Теоретичні відомості
- •Оголошення і визначення класу
- •Тіло класу
- •Інкапсуляція. Керування доступом до членів класу
- •Використання даних-членів класу
- •Хід роботи
- •Індивідуальне завдання до заняття №20
- •Питання для контролю і самостійної роботи
- •Заняття№21 Використання конструкторів і деструкторів у класах
- •Теоретичні відомості
- •Ініціалізація об'єктів класу
- •Деструктори
- •Виклик деструкторів
- •Хід роботи
- •Питання для контролю і самостійної роботи
- •"Друзі" класів (friend)
- •Хід роботи
- •Індивідуальне завдання до заняття №22
- •Контрольні питання для підготовки і самостійної роботи
- •Віртуальні базові класи
- •Віртуальні деструктори
- •Хід роботи
Хід роботи
Вивчити теоретичні відомості.
Відповідно до індивідуального завдання розробити алгоритм рішення задачі. Оголосити складені (комбіновані) типи, масиви структур, використовувати покажчики як члени структури, оголосити об'єднання і виконати роботу з об'єднанням. Результати ініціалізації, зміни членів комбінованих типів у процесі обчислення вивести на екран.
Розробити програму, набрати програму на комп'ютері, усунути помилки.
Одержати результат.
Оформити звіт.
Підготуватися до захисту роботи, вивчивши контрольні питання по даній темі.
Індивідуальне завдання до заняття №14 узяти з роботи №3.
Вимоги до змісту звіту приведені в занятті №1.
Питання для контролю і самостійної роботи
Які типи даних можуть бути членами структур ?
Який синтаксис оголошення структур ?
Як оголошуються перемінні (об'єкти) структурного типу ?
Які види об'єктів структурного типу можна оголосити ?
Як виконується ініціалізація даних-членів структури ? Які особливості ініціалізації масивів і структур-членів структури (вкладених структур) ?
Чи можна робити неповну ініціалізацію структури (не для всіх членів структури) ?
Які правила ініціалізації даних-членів структур Ви знаєте ?
Як розташовуються дані-члени структур у пам'яті ?
Що таке об'єднання (union) ?
Як розташовуються в пам'яті дані-члени об'єднання ?
Який синтаксис оголошення типу й об'єктів типу об'єднання ?
У чому відмінність об'єднання від структури ?
Як здійснюється доступ до даних-членів структури, об'єднання ?
Як здійснюється доступ до даних-членів структури, розташованої в масиві структур ?
Заняття № 15 Використання покажчиків для роботи зі складеними типами даних (2години)
Ціль роботи: виробити практичні навички у використанні покажчиків при роботі зі складеними (комбінованими) типами даних.
Теоретичні відомості
Для роботи з структурами можна оголосити покажчики на структури й одержати доступ до даних-членів цих структур, використовуючи покажчики. Мова С вимагає, щоб при цьому використовувалася операція доступу до даних ( -> ) замість операції доступу ( . ) "крапка". Загальний синтаксис для оголошення покажчика на перемінну структурного типу той же, що і для звичайної перемінної.
Таблиця 15.1 - Приклад оголошення покажчика на структурний тип і використання його для доступу до даних-членів цієї структури.
Оголошення типу структури за допомогою typedef |
Використання структур і покажчиків |
typedef struct myComp { float my_real; float my_mag; } MyComp; //Типи структур – // myComp і // MyComp синоніми |
void main( ) { myComp comvar = { 1.0, 2.8 }; MyComp *pсom = &comvar; cout <<"Complex number = " << pсom -> my_real << pсom -> my_mag; } |
У прикладі оголошена структура myComp або MyComp із даними-членами my_real і my_mag типу float. У функції main( ) оголошується і ініціалізується перемінна-структура comvar. У функції також оголошується покажчик pсom на тип myComp, який ініціалізується адресою перемінної comvar. При виведенні в потік cout використовується операція ( -> ) для доступу за допомогою покажчика pсom до даних-членів my_real і my_mag структури comvar.