Табличнi величини та алгоритми їх опрацювання.
Одновимiрний масив даних
Конспект уроку з iнформатики
9 клас
Структура уроку
1. Поняття масиву
2. Види масивiв
3. Алгоритм роботи з масивом
4. Оголошення масиву
5. Приклади опису масивiв
6. Заповнення масиву
7. Практичне завдання
8. Контрольнi запитання
9. Домашнє завдання:
0.1 Поняття масиву
При розв’язуваннi задач треба використовувати рiзну кiлькiсть змiнних, кожна з яких повинна мати власну назву. Якщо змiнних багато, то робити це не дуже зручно.
Якщо це данi одного типу можна спробувати розташувати їх в одному мiсцi, впорядковуючи їх, тобто поставити їх один за одним.
Данi одного типу можна об’єднати i надати їм одне iм’я. Таке об’єднання вiднесемо до складених даних однорiдної структури – МАСИВ. Наприклад: a. Клас – група учнiв певного вiку:
1. Iванов Петро
2. Петров Iван
3. ...
b. Багатоповерховий будинок – множина пронумерованих квартир, в ко-
жнiй з яких живе певна кiлькiсть мешканцiв
• квартира №1 – 3
• квартира №2 – 5
• квартира №3 – 2
• ...
• квартира №100 – 4
Масив – це сукупнiсть однотипних елементiв, що мають спiльне iм’я.
Рис. 1: Поняття масиву
• Масив визначається iдентифiкатором i кiлькiстю iндексiв, якi необхiднi для визначення мiсцерозташування потрiбного елемента масиву.
• Назва масиву є єдиною для всiх його елементiв.
Розмiрнiсть масиву – кiлькiсть iндексiв.
До окремого елемента можна звернутися за допомогою iндексiв. Як iндекси можуть використовуватися константи i змiннi порядкових типiв.
Розмiр масиву – кiлькiсть елементiв у масивi. Елементами масивiв можуть бути величини як простих, так i складених типiв.
0.2 Види масивiв
Масиви
Статичнi |
Динамiчнi |
Задається тип елементiв i розмiрнiсть масиву |
Задається тiльки тип, а розмiрнiсть не вказується |
Var A:array [1..n] of тип |
Var A:array of тип |
Рис. 2: Поняття масиву
Рис. 3: Поняття масиву
1. Одновимiрний – лiнiйна таблиця (вектор)
2. Двовимiрний – матриця
• Оголосити про використання масиву в роздiлi описiв • Очистити пiдготовлене мiсце в пам’ятi (якщо необхiдно
• Задати необхiднi значення елементiв масиву.
• Якщо потрiбно вивести масив на екран для наочного сприйняття.
• Виконати дiї над елементами масиву.
• Вивести результати на екран.
При оголошенi масиву:
Масиву надається iм’я
Вказується тип масиву
Визначається число елементiв Видiляється мiсце в пам’ятi
• Регулярного типу має вигляд: type <iм’я типу> = Array [<iндекси>] of <базовий тип>;
• Сталих величин має вигляд: const <iм’я масиву>: Array [< тип iндексу>] of <тип> = (список елементiв масиву);
• Змiнних величин має вигляд: var <iм’я масиву> : Array [<iндекси>] of < базовий тип>;
!Розмiр масиву визначається пiд час опису, але кiлькiсть елементiв може бути менше, нiж зарезервовано мiсця в пам’ятi.
1. з використанням типiв:
const n = 20; type Vector = array [1..n] of real; Matrix = array [1..10] of integer; var A: Vector; B: Matrix;
2. масив сталих величин:
const A: array [1..7] of real = (0.1, 3.25, 21.32, -5.5, 11.99, 78.1, -4.5);
Stroka: array [1..6] of char = (‘P’, ‘A’, ‘S’, ‘C’, ‘A’, ‘L’);
3. масив змiнних величин: const n = 50;
var A: array [1..n] of real;
B: array [1..10] of integer
1. Випадковими числами з промiжку [a, b]: randomize; пiдключити генератор випадкових чисел for i:=1 to n do А[i]:=random(b-a+1) + a;
Тип Х |
Дiапазон значень x |
Використання функцiї |
Цiлий |
[0;В], [A;B] |
X:=Random(В+1); X:=Random(B-A+1)+A; |
Дiйсний |
(0;1), (0;A), (A;B) |
X:=Random;X:=Random*A; X:=A+Random*(B-A); |
2. 2. За формулою: for i:=1 to n do А[i]:=i * i - 2; ( формула мiстить змiнну i )
3. 3. З клавiатури за допомогою функцiї InputBox: for i:=1 to n do
Begin
А[i] := strtoint(InputBox(‘уведiть значення елемента’,
‘номер [ ’ + inttostr(i) + ‘ ]:’, ’ ’));
ListBox1.Items.Add(inttostr(A[i])); End;
Завдання 1.
Сформувати одним iз трьох способiв одновимiрний масив цiлих чисел A[i], де i = 1,2, ... , n.
Вивести елементи масиву:
• у зворотному порядку;
• з парними iндексами;
• з непарними iндексами;
• що є додатними числами;
• що є вiд’ємними числами;
• що є парними числами;
• що є непарними числами.
1. Дайте означення масиву як структурованого типу даних.
2. Опишiть масиви:
а) А з трьох дiйсних чисел;
б) В з десяти символiв.
3. Як органiзувати заповнення масиву випадковими числами?
4. Запишiть оператор присвоєння, який виконує таку дiю:
а) першому елементу масиву С присвоїти значення суми третього i п’ятого елементiв;
б) шостому елементу масиву С присвоїти значення подвоєного добутку першого i другого елементiв.
5. Як увести значення елементiв масиву з клавiатури?
Створiть програму для заповнення масиву Numbers[1..10] числами 1,4, 9, ..., 100 i виведення значень елементiв масиву в поле ListBox.