3 - Профільна інформатика

Download Report

Transcript 3 - Профільна інформатика

Масиви.
Створення консольних
проектів у C#
ПРОФІЛЬНА ІНФОРМАТИКА 10 КЛАС
Іще один тип задач
2
Є дійсна квадратна матриця порядку A(n x n).
Створити масив B(m), m=n, x, n, елементи якого
здобуті читанням матриці по спіралі.
Навчальна презентація Кравчук Г.Т.
09.04.2015
Перестановка елементів масиву
3
Перестановка або обмін значеннями між двома
елементами масиву здійснюється аналогічно до обміну
значеннями між двома змінними (рис. 7.6).
Значення одного елемента масиву зберігається в
допоміжній змінній.
Значення іншого елемента присвоюється першому
елементу.
Значення допоміжної змінної присвоюється другому
елементу.
Навчальна презентація Кравчук Г.Т.
09.04.2015
Алгоритм задачі інвертування масиву
4
Як приклад застосування методу перестановки елементів
розглянемо задачу «перевертання», або інвертування, масиву:
переставити значення першого і останнього елемента, другого і
передостаннього тощо. Особливість задачі полягає в тому, що
виконання операцій перестановки лише для лівої половини
елементів здійснить інвертування всього масиву.
Алгоритм задачі інвертування масиву
1) Ввести n — розмір масиву та згенерувати значення його
елементів.
2) Починаючи з першого елемента і до середини масиву
виконувати обмін значеннями між i-м та (n-i+1)-м елементами
масиву.
3) Вивести масив.
Навчальна презентація Кравчук Г.Т.
09.04.2015
Вставка та видалення елемента, циклічний
зсув елементів масиву
5
Під час розв'язання багатьох задач виникає необхідність вставити новий елемент на задану
позицію в масиві, видалити заданий елемент масиву або циклічно зсунути елементи масиву на
одну позицію. На рис. елементи, що зсуваються, оточені жирною межею, а елементи, що
видаляються або додаються, пофарбовані сірим.
Вставка (а) та видалення (б) елементів масиву
Перед тим як вставляти до масиву новий елемент, для нього слід звільнити місце. Це можна
зробити шляхом переміщення на одну позицію вправо підмасиву, що починається з позиції, у яку
буде вставлено новий елемент. Так, якщо необхідно вставити новий елемент tmp на позицію 3 в (n1)-вимірний масив а, то підмасив а[3], ..., а[n-1] треба зсунути вправо на одну позицію.
Переміщення підмасиву слід здійснювати поелементно, починаючи від його правого елемента і
рухаючись до лівого (якщо зсув здійснювати зліва направо, то весь підмасив буде заповнений
значенням елемента а[3]).
В результаті вставки кількість елементів масиву збільшиться. Згадаймо, що одна з
властивостей масиву полягає у незмінності його розмірності. Тому кількість елементів у масиві
можна збільшити лише в межах тієї розмірності, яка була вказана під час його оголошення.
Навчальна презентація Кравчук Г.Т.
09.04.2015
Вставка та видалення елемента, циклічний
зсув елементів масиву
6
На відміну від операцій видалення або вставки елементів, під
час циклічного зсуву масиву кількість його елементів не
змінюється. Для циклічного зсуву вправо слід зберегти в
резервній змінній останній елемент та на одну позицію вправо
перемістити підмасив, що починається з першого елемента і
завершується передостаннім.
Після цього необхідно записати на місце першого елемента
той, який раніше був останнім. Коли виконують циклічний зсув
вліво, у резервній змінній зберігають перший елемент, зсувають
на одну позицію вліво підмасив, що починається з другого
елемента і завершується останнім, та записують на місце
останнього елемента той, який раніше був першим.
Навчальна презентація Кравчук Г.Т.
09.04.2015
7
Нехай початкові елементи масиву А мають такі значення:
Видалимо з цього масиву другий елемент. Тоді змінений масив матиме
вигляд:
Отже, для видалення другого елемента з цього масиву потрібно всі
елементи початкового масиву А, починаючи з третього, зсунути на один
елемент вліво.
Підсумковий масив:
Навчальна презентація Кравчук Г.Т.
09.04.2015
Вставка елемента х на задану позицію k
в масиві А цілих чисел
8
Розглянемо масив А, у якому визначено значення
чотирьох перших елементів. Додамо елемент х=10
на третю позицію (k=3) в даний масив масив.
Для цього потрібно ніби “розсунути” початковий
масив, звільнивши місце для елемента х, тобто
перемістити частину початкового масиву А,
починаючи з незміненого третього елемента,
вправо на одну позицію. Тоді на звільнене місце
можна розмістити значення елемента х.
Навчальна презентація Кравчук Г.Т.
09.04.2015
Вставка елемента х на задану позицію k
в масиві А цілих чисел
9
Змінений масив:
Проте переміщення початкових елементів масиву
А потрібно виконувати з кінця, інакше всі
елементи цього масиву, починаючи з четвертого,
отримають значення третього елемента, який
починає переміщення.
Навчальна презентація Кравчук Г.Т.
09.04.2015
10
Навчальна презентація Кравчук Г.Т.
09.04.2015