
- •Іі семестр Лабораторна робота №1
- •Запишіть ланцюг рекурсивних викликів та поясніть роботу заданої рекурсивної функції:
- •Запишіть ланцюг рекурсивних викликів та поясніть роботу заданої рекурсивної функції:
- •Лабораторна робота №2
- •Лабораторна робота №3
- •Лабораторна робота №4
- •Лабораторна робота № 5 Тема: Вказівники на функції. Масиви вказівників на функції. Функції з довільним числом параметрів.
- •Лабораторна робота № 6 Тема: Динамічний розподіл пам’яті. Динамічні одновимірні масиви.
- •Лабораторна робота № 7-8
- •Лабораторна робота № 9
- •Лабораторна робота № 10
- •Лабораторна робота № 11
- •Лабораторна робота № 12
- •Лабораторна робота № 13
- •Лабораторна робота № 14-16
Лабораторна робота № 6 Тема: Динамічний розподіл пам’яті. Динамічні одновимірні масиви.
Мета: Формування вмінь і навичок створення динамічних змінних, динамічних масивів даних.
Контрольні запитання:
Яка змінна називається статичною? автоматичною? динамічною?
Порівняйте статично та динамічно розподілені змінні.
Час життя та область видимості динамічно розподіленої змінної. Ініціалізація за замовчуванням.
Засоби створення динамічних змінних у С++.
Засоби звільнення динамічних змінних у С++.
Створення та звільнення динамічного масиву з елементів певного типу.
Як перевірити чи замовлена ділянка пам’яті справді виділена?
Поясніть, у яких випадках виникає «витік пам’яті».
Завдання 1. Створити 3 динамічних змінних різного типу. Заповнити їх деякими значеннями. Вивести значення динамічних змінних на екран, обчислити добуток та середнє арифметичне. Звільнити пам’ять.
Завдання 2 .
Написати бібліотеку функцій(шаблонів функцій) для роботи з динамічним одновимірним масивом, які реалізують наступні завдання
Створення динамічного масиву вказаного розміру і його заповнення випадковими числами. Функція повертає адресу створеного масиву( або отримує посилання на вказівник на базовий тип масиву).
Вивід елементів масиву
Доповнення масиву одним елементом. Функція отримує адресу масиву, розмір та елемент для доповнення.
Видалення елемента за вказаною позицією.
Вставка нового елемента у довільну допустиму позицію у масиві
Доповнення масиву блоком елементів.
Видалення блоку елементів із масиву за вказаною позицією.
Вставка блоку нових елементів у довільну допустиму позицію у масиві
За допомогою функцій бібліотеки розв’язати задачу згідно варіанту.
Варіанти:
Дано масив дійсних чисел. Після кожного від’ємного елемента вставити його модуль.
Дано масив дійсних чисел. Видалити ту половину масиву, у якій розміщений мінімальний елемент.
Дано масив дійсних чисел. Видалити всі фрагменти масиву, які утворюють зростаючу послідовність.
Дано цілочислові масиви А і В. Додати у кінець масиву А елементи з масиву В, кратні 3 або 7.
Дано масив цілих чисел. Якщо перший елемент масиву є парним числом, то видалити із масиву всі парні числа, інакше – навпаки(видалити непарні числа).
Дано масив цілих чисел. Видалити з масиву усі непарні числа.
Дано масив цілих чисел. Перед кожним елементом масиву вставити число, що рівне останній цифрі елемента. Наприклад, масив A = {12, 23, 89, 50} має бути перетворений до {2, 12, 3, 23, 9, 89, 0, 50}.
Задача «Решето Ератосфена». Дано перших N натуральних чисел. Спочатку викреслюються(видаляються із масиву) числа, що діляться на 2, потім ті що діляться на 3 . і т.д. Результат – прості числа із діапазону 1..N.
Дано масив дійсних чисел. Видалити всі фрагменти масиву, які утворюють зростаючу послідовність.
Дано 2 масиви дійсних чисел: A, B. Утворити масив із спільних елементів цих масивів мінімально можливого розміру.
Дано масив символів. Кожну групу з повторів деякого символу замінити одним його входженням.
Дано масив дійсних чисел. Видалити всі повторні входження елементів у масиві.
Дано масив натуральних чисел. Доповнити початок цілого масиву послідовністю чисел, що передують першому елементу. Наприклад, для масиву {5, 10, 100, 3} очікується результат {1, 2, 3, 4, 5, 10, 100, 3}.
Дано 2 масиви дійсних чисел: A, B. Утворити масив із елементів масиву А, які не зустрічаються у В.
Дано масив А натуральних чисел. Утворити масиви мінімально можливого розміру В і С, що містять трицифрові та двоцифрові числа масиву А відповідно.