
- •2.2 Описування одновимірних масивів
- •2.3 Виведення елементів одновимірного масиву
- •2.3.1 Виведення в Edit
- •2.3.2 Виведення у Label
- •2.3.3 Виведення у вікно повідомлень
- •2.3.4 Виведення у Memo
- •2.3.5 Виведення у ListBox
- •2.4 Введення елементів масиву
- •2.4.1 Введення з вікна Memo
- •2.4.2 Введення з ListBox
- •2.4.3 Введення з Edit
- •3 Приклади програм з одновимірними масивами
- •4 Контрольні запитання
- •5 Лабораторне завдання
- •6 Варіанти індивідуальних завдань
Лабораторна робота №5
Одновимірні масиви
1 Мета роботи
Знайомство з найпростішим зі структурованих типів даних – одновимір-ним масивом. Вивчити засоби використання одновимірних масивів в програмах алгоритмічною мовою Object Pascal в середовищі програмування Delphi.
2 Основні теоретичні відомості
2.1 Поняття масиву
Масив ( Array ) в програмуванні – це упорядкована сукупність елементів одного й того самого типу. Масиви зручно використовувати для зберігання та опрацювання однорідної інформації, наприклад, таблиць, векторів, матриць, коефіцієнтів рівнянь тощо.
Кожен елемент масиву однозначно можно визначити ім’ям та індексами. Ім’я масиву (iдентифікатор) складають за тими самими правилами, що й для змінних. Індекси визначають місцезнаходження елемента в масиві. Наприклад, елементи вектора мають один індекс – номер за порядком; елементи матриць чи таблиць мають по два індекси: перший означає номер рядка, другий номер стовпчика. Кількість індексів визначає вимірність масиву. Наприклад, вектори в програмах – це одновимірні масиви, матриці – двовимірні. В цій роботі ми розглянемо лише одновимірні масиви.
Індексами можуть бути лише змінні, константи чи вирази цілого, символьного, логічного та перераховного типів. Тип індексу визначає границі значень індексу. Значення індексів записують після імені масиву в квадратних дужках і відокремлюють комами. Наприклад:
A [10], Vect [к], r7 ['с'] елементи векторів: А10, Vectk, r7’c’;
Масив може займати в пам’яті не більш 2 Гбайти.
2.2 Описування одновимірних масивів
Масиви в програмах можна описувати двома способами :
1) Type ім'я_типу = аrray [тип_індексу] оf тип_елементів_масиву;
Var ім'я_масиву : ім'я_типу;
2) Var ім'я_масиву : аrray [тип_індексу] оf тип_елементів;
Тут тип_індексу – це константи або змінні перераховного типу, які визначають діапазон змінювання індексів. Приклади описування масивів:
Type Mas1= array [1.. 11] of real;
Mas2= array [1.. 5] of integer;
Mas3 = array ['a'..'e'] of real;
Mas4= array [Boolean] of char;
Var A : Mas1; B : Mas2; C : Mas3; D : Mas4;
У прикладах наведено опис таких масивів:
А вектор величин А1, А2,…, А11, який складається з дійсних елементів А [ 1 ], А [ 2 ], … , А [ 11 ];
B послідовності 5 цілих чисел B1,B2,…B5, яка складена з цілих елементів B[1], B[2],...,B[3].
C вектор з п’яти елементів дійсного типу C['a'], C['b'], C['c'], C['d'], C['e'];
D символьний масив з двох елементів D [ True ], D [ False ];
Для описування масивів зручно використовувати типізовані констант-масиви, які дозволяють водночас об’явити масив й задати його значення в розділі опису констант:
Const ім'я_масиву : аrray [тип_індексу] оf тип_елементів_масиву =
(значення_елементів_масиву);
Наприклад, оператор
Const T : array [1..5] of real = (0.5, 3.4, –2.7, 6.5, 4.8);
описує й задає значення п’ятьом елементам вектора Т.
Значення елементів масивів із загальним описом можна присвоювати лише одним оператором присвоєння, не використовуючи цикли. Наприклад, якщо масиви S й Z мають опис
Var S,Z : array[1..14] of real;
то після введення або обчислення значень масиву S можна присвоїти такі ж самі значення масиву Z одним оператором
Z : = S;
2.3 Виведення елементів одновимірного масиву
Виводити значення масивів можна у файл або на форму, використо-вуючи різноманітні компоненти Delphi. При цьому виводити значення елементів масивів можна лише поелементно, для чого слід організувати цикли змінювання за значеннями індексу. Як зорганізувати виведення масивів у файл, буде розглянуто в інших лабораторних роботах. Тепер розглянемо, як зорганізувати виведення одновимірних масивів на форму за допомогою компонентів Edit, Label, Memo, ListBox та функції ShowMessage.
В наведених прикладах використовуватимемо змінні, що мають такий опис:
Var А : array[1..11] of real;
i, ier : integer ;
sa, st : string ;
2.3.1 Виведення в Edit
В компонент Edit можна виводити одновимірні масиви, відокремлюючи елементи пропусками чи іншим символом. Кількість елементів масиву, котрі можна побачити, обмежена довжиною компонента Edit на формі вікна.
Приклад фрагменту програми виведення масиву А:
st : =’’; // очищення рядка st
For i : =1 to 11 do // початок циклу за індексами масиву
begin
str(А[i] : 4:1, sa); // перетворення числа на рядкову величину
st : = st+sa +’ ’; // нагромадження рядка значень масиву
end;
Edit1.Text:=st; // присвоєння значень масиву компоненту Edit1