Масиви даних«Основи програмування та алгоритмічні мови»(для груп ПК-21, ПК-22)
Номер слайду 2
План теми:1. Масиви. Ініціалізація масивів.2. Динамічне оголошення масивів.3. Багатовимірні масиви.
Номер слайду 3
Масив – це впорядкований скінчений набір даних одного типу, які зберігаються в послідовно розташованих комірках оперативної пам’яті і мають спільну назву. Назву масиву надає користувач. Масив складається з елементів. Кожен елемент має індекси, за якими його можна знайти у масиві.
Номер слайду 4
Кількість індексів визначає розмірність масиву. Розрізняють одно- та багатовимірні масиви. Одновимірний. Двовимірнийлінійна таблицяпрямокутна таблицяквадратна таблиця=
Номер слайду 5
Порядок роботи з масивом
Номер слайду 6
Загальний вигляд конструкції опису одновимірного масиву такий:< тип > < ім’я масиву >[< розмір >]Розмір – це кількість елементів масиву. Розмір масиву необхідно знати і задавати заздалегідь, оскільки компілятор має зарезервувати необхідний обсяг пам’яті для нього. Розміром може бути лише стала величина (не змінна).
Номер слайду 7
Опис одновимірного масиву
Номер слайду 8
Нумерація елементів масиву завжди починається з нуля. Наприклад,int A[10];
Номер слайду 9
Проініціалізувати масив ( надати значення елементам масиву) можна одним із способів:1)використовуючи принцип замовчування;2)безпосередньо під час його оголошення;3)застосовуючи команду присвоєння;4)під час введення даних з клавіатури. За замовчуванням усім елементам масиву надається значення 0.
Номер слайду 10
Наприклад, int stud[] ={2,10,5,7,3};float rist[10]={163.4, 154.6, 170, 172, 8};char alphavit[6]=’Абетка’або char alphavit[6]={‘А’, ‘б’, ‘е’, ‘т’, ‘к’, ‘а’}. Масиви-сталі (значення яких змінювати у програмі не можна) оголошують так: const int flag[] = {1, 2};Сталі масиви треба ініціалізувати під час оголошення, інакше елементам масиву автоматично будуть присвоєні нульові значення.
Виведення масиву. У рядок. У стовпчикfor (int i=0;i<10;i++)cout<
Номер слайду 13
Приклад 1 Створити масив з перших ста цілих чисел і обчислити суму всіх його значень #include#include#includevoid main(){ clrscr(); int n[100]; int S=0; for (int k=0; k<100; k++) { n[k]=k+1; S+=n[k]; } cout<<“S=”<
Номер слайду 14
2. Динамічне оголошення масивів. Під час компіляції програмного коду для статично оголошених масивів надається пам'ять. Для ефективного використання пам'яті призначене динамічне оголошення масивів, а саме:<тип вказівника>*<назва>= new <тип змінної>[<кількість>];Після виконання цієї команди буде виділена неперервна ділянка пам'яті обсягом sizeof (тип змінної) * <кількість>,і назва масиву вказуватиме на початок цієї ділянки. З динамічною змінною можна виконувати операції, визначені для даних відповідного базового типу. Після опрацювання масиву вивільнити пам'ять можна за допомогою командиdelete[] <назва вказівника на масив даних>;Під час вивільнення пам'яті розмір масиву зазначати не потрібно.
Номер слайду 15
Розв'яжемо задачу з прикладу 1, використовуючи динамічний розподіл пам'ятііnt *n = new int [100]; // Виділяємо пам'ять для ста цілих чиселfor (int S = 0, k = 0; k< 100;){ // Опрацьовуємо масив*(n+k) = ++k;S+= *(n+k);}delete[] n; // Вивільняємо пам'ять
Номер слайду 16
3. Багатовимірні масиви. Якщо елемент масиву має не один, а декілька індексів, то такі масиви називають багатовимірними. Прикладами багатовимірних масивів можуть бути різноманітні табличні дані: річний табель учня, сторінка в шкільному журналі, таблиця результатів футбольних змагань тощо.
Номер слайду 17
Загальний вигляд конструкції опису багатовимірного (N-вимірного) масиву такий:< тип > < ім’я масиву >[< р1 >][]…[],де р1,p2,..., pn задають розміри для кожного виміру. Кількість індексів визначає вимірність масиву.
Номер слайду 18
Двовимірні масиви Двовимірний масив - це таблиця, у якій кожному елементу ставиться у відповідність два індекси, які визначають його місце (рядок, стовпець) у таблиці. Приклад. Опис двовимірного масиву Matr цілих чисел розміром 3×4.int Matr[3][4]; // двовимірний масив розміром 3*4
Номер слайду 19
Ініціалізація двовимірного масиву M дійсних чисел розміром 3×4. Задається розмір масиву.// ініціалізація масиву M дійсних чисел розміром 3*4float M[3][4] = { { 0.5, -2.8, -1.0, 23.45 }, { -2.3, 0.4, 10.5, 0.8 }, { 12.5, 10.4, 5.4, 3.56 } };Під час оголошення двовимірні масиви можна частково або повністю ініціалізувати.
Номер слайду 20
Приклад 2 (про таблицю множення). Скласти програму для занесення в двовимірний масив р таблиці множення двох чисел і виведення масиву на екран.// Таблиця Піфагора#include #includevoid main(){clrscr();const n = 9;int p[n][n];for (int і = 0; і < n; і++){for (int j = 0; j < n; j++){ // Множення чиселp[i][j] = (і+ 1)*(j+ 1);cout<