- •Лекція №8-9
- •Перерахований тип даних
- •Діапазонний тип
- •Особливості роботи з користувацькими простими типами
- •Регулярний тип даних (масиви)
- •Порядок роботи з масивом:
- •Одновимірні масиви Опис одновимірних масивів
- •Двовимірні масиви
- •Сортування одновимірних масивів
- •Використання одновимірних масивів
- •Одновимірні масиви, що складаються з констант
- •Сортування вставкою (включенням).
- •Сортування вибором (виділенням).
- •Сортування обміном (метод «бульбашки»).
- •Сортування підрахунком.
Використання одновимірних масивів
У програмі можна працювати не тільки з усім масивом цілком, але й з окремими його елементами. Для того, щоб у програмі звернутися до якого-небудь елемента масиву, потрібно поруч із ім’ям масиву вказати індекс елемента, що міститься в ньому. Наприклад, якщо ви зустрінете в програмі наступний запис: а[10], то вона означає, що ми звертаємося до елемента масиву а з порядковим номером 10.
Деякі методи опрацювання одновимірних масивів дивіться в зразках до лабораторних робіт з цієї теми.
Одновимірні масиви, що складаються з констант
Відзначимо ще дві особливості масивів. По-перше, елементами масиву можуть бути не тільки змінні, але й константи. Такий масив описується в розділі оголошень як константа. У цьому ж розділі такому масиву присвоюються значення. По-друге, нижньою границею діапазону масиву не обов’язково повинна бути одиниця, важливо тільки, щоб значення нижньої границі було менше, ніж верхньої.
Двовимірні масиви
Найпростішим прикладом двовимірного масиву є всім відома таблиця множення, у якій результат множення двох чисел визначається за номером рядка, що відповідає одному з співмножників, і номером стовпчика, що відповідає іншому співмножнику. Відповідно й у будь-якому двовимірному масиві елемент визначається за двома індексами.
У мові Паскаль у загальному виді двовимірні масиви описуються в такий спосіб:
var < ім’я масиву >: array [<нижня границя індексу1> . . <верхня границя індексу1>, <нижня границя індексу2> . . <верхня границя індексу2>] of <тип елементів >;
Приклад опису двовимірного масиву: var tabl: array [1..9, 1..9] of integer; – таким чином описали масив цілих чисел, що містить 9 рядків і 9 стовпців.
Заповнення двовимірного масиву:
а) з клавіатури: for i:=l to n do for j:=1 to m do begin write ( введіть A[i, ’,’, j, ’]=’) ; readln(A[i, j] end;
б) за формулою: for i:=l to n do for j: =1 to m do A[i, j]:=i*i-10 {або інша формула};
в) випадковим чином із проміжку [K, L]:
for i:=l to n do for j:=1 to m do A[i, j]:=random(L-K)+K;
Виведення двовимірного масиву на екран:
for і:=1 to n do begin for j:=l to m do write(A[i, j] :8) ; {виведення рядка}
writeln; {перехід на новий рядок} end;
Як уже було зазначено, для роботи з масивом потрібен будь-який оператор повторення. Очевидно, що у двовимірному масиві необхідно використовувати два оператори повторення: один цикл (внутрішній) потрібен для переходу між елементами рядка (тобто, по стовпчиках), а другий (зовнішній) – для переміщення між рядками. Якщо в масиві кількість рядків і стовпчиків однакова, то такий масив називають квадратним (на відміну від звичайної прямокутної таблиці).
Деякі методи опрацювання двовимірних масивів дивіться в зразках до лабораторних робіт з цієї теми.
Сортування одновимірних масивів
При розв’язуванні завдання сортування звичайно висувається вимога мінімального використання додаткової пам’яті, з якого випливає неприпустимість застосування додаткових масивів (в загальному випадку).
Для оцінки швидкодії алгоритмів різних методів сортування, як правило, використовують два показники:
-
кількість присвоювань;
-
кількість порівнянь.
Всі методи сортування можна розділити на дві великі групи:
-
прямі методи сортування;
-
поліпшені методи сортування.
Прямі методи сортування за принципом, що лежить в основі методу, у свою чергу розділяються на чотири групи:
-
Сортування вставкою (включенням).
-
Сортування вибором (виділенням).
-
Сортування обміном (метод «бульбашок»).
-
Сортування підрахунком.
