You are on page 1of 7

Лабораторна робота 3

Тема: Масиви. Сортування масивів.


Мета: Сформувати практичні навички побудови програм із використанням та
сортуванням масивів.
Хід роботи:

1. Знайти суму елементів масиву

2. Знайти добуток елементів масиву


3. Знайти середнє арифметичне елементів масиву

4. Знайти суму елементів кожної стрічки матриці


5. Знайти добуток елементів кожної стрічки

Завдання 6.
Завдання 7.
Контрольні запитання:
1. mas[i], mas[i][j]
2. У разі повної ініціалізації вказується повний список значень у фігурних
дужках.
У разі часткової ініціалізації вказується розмір масиву і неповний список
значень у фігурних дужках. Неініціалізовані елементи отримують нульові
значення.
3. У мовах програмування виділення пам'яті для одновимірних і двовимірних
масивів може виконуватися кількома способами: статично та динамічно.
Статичне виділення пам'яті відбувається під час компіляції програми і вимагає
визначення розміру масиву на етапі оголошення. Це означає, що розмір масиву
є фіксованим під час виконання програми.
Динамічне виділення пам'яті відбувається під час виконання програми і
дозволяє створювати масиви змінної розмірності. Для цього використовуються
функція new (у C++) для виділення пам'яті та функція delete (у C++) для
звільнення виділеної пам'яті.
4. За допомогою циклу і операторів вводу і виведення
5. Ім’я масиву, а потім в [ ] номер: a[1],a[2][3],b[i],b[i][j]
6. Вручну - елемент за елементом.
За допомогою вбудованих функцій.
7. Прямокутний багатовимірний масив - це масив, у якого кожен рядок має
однакову кількість стовпців, тобто усі рядки та стовпці мають однакову
довжину. Mas[2][3].
8. Багатовимірні масиви з різними довжинами рядків, часто називаються
"рваними" (jagged) масивами, це структури даних, що дозволяють мати масиви,
де кожен рядок може мати різну кількість елементів. Вони корисні в ситуаціях,
коли дані не можуть бути легко організовані в регулярний прямокутний масив.
9. У прикладі ми виділяємо пам'ять для масиву вказівників
багатовимірний_масив, а потім виділяємо пам'ять для кожного рядка окремо,
враховуючи їх довжину. Після використання цих рядків ми вивільняємо
виділену пам'ять за допомогою функції free.
10. Алгоритми сортування в комп'ютерній науці та програмуванні мають
важливе значення і використовуються для наступних цілей:

Організація даних: Алгоритми сортування допомагають впорядковувати набори


даних відповідно до певного критерію. Це полегшує роботу з даними і дозволяє
легко знаходити потрібну інформацію.

Пошук даних: Пошук даних в відсортованих наборах виконується набагато


швидше, оскільки можна використовувати ефективні алгоритми пошуку, такі
як бінарний пошук.

Підготовка даних для інших алгоритмів: Деякі алгоритми та структури даних,


такі як бінарні дерева пошуку, працюють набагато ефективніше на
відсортованих даних.

Оптимізація роботи з пам'яттю: Деякі алгоритми сортування можуть вимагати


менше оперативної пам'яті, що особливо важливо для обробки великих обсягів
даних.

Покращення зручності для користувачів: Відсортовані дані легше читати та


зрозуміти для людей, що полегшує їхню роботу з даними.

Покращення продуктивності програм: Відсортовані дані дозволяють деяким


алгоритмам працювати швидше і ефективніше.

Оптимізація операцій з диском: У великих обсягах даних сортування може


зменшити кількість операцій зчитування і запису на диск, що робить роботу з
даними ефективнішою.

Аналіз та обробка даних: В аналізі даних та машинному навчанні сортування


може бути першим кроком для підготовки даних до подальшої обробки.

Загалом, алгоритми сортування грають важливу роль в обробці та аналізі


даних, полегшуючи роботу з ними та поліпшуючи продуктивність програм.

11. . Вхідні дані, порівняння, переставлення або обмін, умова завершення,


головний цикл або ітерація.

12. Час сортування – основний параметр, що характеризує швидкодію


алгоритму. Необхідна пам'ять – один з параметрів, який характеризується тим,
що ряд алгоритмів сортування вимагають виділення додаткової пам'яті для
тимчасового зберігання даних. При оцінці пам'яті що використовується не буде
враховуватися місце, яке займає вихідний масив даних та витрати які не
залежать від вхідної послідовності, наприклад, на зберігання коду програми.
Стійкість – це параметр, який відповідає за те, що сортування не змінює
взаємного розташування рівних елементів. Природність поведінки – параметр,
якій вказує на ефективність методу при обробці вже відсортованих, або
частково відсортованих даних. Алгоритм поводиться природно, якщо враховує
цю характеристику вхідної послідовності і працює краще.
13. Алгоритм сортування за зростанням:
1. Знайти мінімальне значення в поточному списку.
2. Знайдене мінімальне значення міняється місцем з елементом на першій
позиції.
3. Повторюємо сортування, виключивши з розгляду вже відсортований перший
елемент, тобто, починаючи з другої позиції.
Алгоритм не використовує додаткової пам'яті: всі операції відбуваються "на
місці".
14. Алгоритм полягає в повторюваних проходах по масиву що повинен бути
відсортованим. За кожен прохід елементи послідовно порівнюються попарно і,
якщо порядок у парі невірний, виконується обмін елементів. Проходи по
масиву повторюються до тих пір, поки на черговому проході не виявиться, що
обміни більше не потрібні, що означає - масив відсортований. При проході
алгоритму, елемент, що стоїть не на своєму місці, «спливає» до потрібної
позиції як бульбашка у воді, звідси і назва алгоритму.

You might also like