multidimensional arrays c
Роль багатовимірного масиву в C ++ з прикладами.
До цього часу в наших попередніх підручниках ми бачили все про одновимірні масиви.
С ++ також підтримує масиви з більш ніж одним виміром. Вони називаються багатовимірними масивами. Багатовимірні масиви, як правило, розташовані у вигляді таблиці, тобто в порядку великих рядків.
=> Шукайте тут цілу серію навчальних програм C ++.
Що ви дізнаєтесь:
Багатовимірні масиви в C ++
Розглянемо багатовимірний масив розмірами 3 × 2, тобто 3 рядки та 2 стовпці.
Ми представляємо цей масив наступним чином:
R1c1 | R2c2 |
R2c1 | R2c2 |
R3c1 | R3c2 |
Як показано у наведеному вище поданні, кожна клітинка Наприклад R1C1 буде містити вміст масиву.
Кількість елементів, присутніх у багатовимірному масиві, є добутком його розмірів. Це означає, що якщо розміри масиву 3 × 2, то кількість елементів у цьому масиві є добутком 3 і 2, тобто 6. Аналогічним чином, якщо розміри багатовимірного масиву дорівнюють (10) (20) (10) тоді кількість елементів у цьому масиві дорівнює 10 * 20 * 10 = 2000.
Двовимірний масив - це найпростіша форма багатовимірного масиву, що використовується C ++.
Оголошення масиву
Загальне оголошення багатовимірного масиву в C ++ показано нижче:
dataType arrayName (size1)(size2)….(sizen);
Тут dataType - це тип даних масиву. Тип даних повинен підтримуватися C ++.
arrayName - це ім'я багатовимірного масиву.
Size1, size2… .sizen - це розміри кожного розміру масиву.
Наприклад,оголосимо масив розміром 3 × 2, тобто двовимірний масив, myarray_2d.
int myarray_2d (3)(2);
Двовимірний масив представлений у вигляді рядків і стовпців.
Тож наведене вище оголошення масиву можна представити наступним чином:
myarray_2d (0) (0) | myarray_2d (0) (1) |
myarray_2d (1) (0) | myarray_2d (1) (1) |
myarray_2d (2) (0) | myarray_2d (2) (1) |
Як показано у наведеному вище поданні, кожен елемент двовимірного масиву отримує доступ як myarray_2d (i) (j), де i - номер рядка, і він коливається від 0 до n-1, де n - розмір розміру, а j номер стовпця і становить від 0 до m-1, де m - розмірний розмір стовпця.
Ініціалізація багатовимірних масивів
Ми можемо ініціалізувати багатовимірні масиви, подібні до одновимірних масивів. Багатовимірні масиви ініціалізуються по рядках.
Існує два способи ініціалізації багатовимірних масивів.
# 1) Розглянемо масив із розмірами (3) (2) з іменем myarray:
int myarray(3)(2) = {1, 2,3,4,5,6};
Тут ініціалізація масиву відбувається зліва направо підряд за порядком. Оскільки розміри дорівнюють (3) (2), перші два елементи складатимуть перший рядок тощо.
Зображення цієї ініціалізації буде виглядати, як показано нижче:
один | два |
3 | 4 |
5 | 6 |
# 2) Той самий масив, показаний вище, можна ініціалізувати іншим способом, як показано нижче:
int myarray(3)(2) = { {1,2}, {3,4}, {5,6} };
Тут ініціалізація здійснюється зліва направо, і кожен елемент відповідає одному рядку. Оскільки для цього масиву є три рядки, ми маємо три внутрішні елементи, укладені в фігурні дужки ({}).
Цей спосіб ініціалізації є більш читабельним і є вигідним, коли розміри масиву зростають.
Доступ до багатовимірних масивів
Доступ до багатовимірних елементів масиву здійснюється за допомогою індексу рядків та індексу стовпців.
Подивимось приклад двовимірного масиву з розмірами (3) (3). Нижче наведено код для його ініціалізації.
int newarray (3)(3) = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };
Якщо я хочу отримати доступ до другого елементу в першому рядку і призначити його цілочисельній змінній, тоді рядок коду буде таким:
int val_2d = newarray(0)(1);
Нижче наведено зразок програми, яка показує оголошення, ініціалізацію та доступ до двовимірного масиву.
#include using namespace std; int main() { int myarray(3)(3) = {{1,2,3},{4,5,6},{7,8,9}}; for(int i=0;i <3;i++) { for(int j=0;j<3;j++) { cout< Ця програма видає такі результати:
1 2 3 4 5 6 7 8 9
Як показано у наведеній вище програмі, двовимірний масив оголошується, а потім ініціалізується. Тоді для доступу та друку всіх елементів масиву ми встановили два для циклів. Зовнішній цикл for - це доступ до елементів по рядках. Внутрішній цикл for діє як лічильник для доступу до елементів у кожному стовпці.
як створити проект в затемненні
Таким чином, ми отримуємо доступ до кожного елемента цього двовимірного масиву та відображаємо його на екрані.
Висновок
Багатовимірні масиви можуть мати будь-яку кількість розмірів, і зі збільшенням кількості розмірів складність відповідно збільшується.
Хоча ми використовували двовимірні масиви у всіх наведених вище прикладах, ми можемо кодувати масиви з більшими розмірами подібним чином.
=> Клацніть тут для безкоштовного курсу C ++.
Рекомендована література
- Масиви в STL
- Використання масивів з функціями в C ++
- Масиви C ++ із прикладами
- Масиви VBScript: Використання функцій DIM, REDIM, Split та Ubound Array
- Вставте кілька документів у MongoDB за допомогою масивів
- Найкращий БЕЗКОШТОВНИЙ підручник з C #: Остаточний посібник для C # для початківців
- Java-типи даних, цикли, масиви, комутатори та твердження
- Розширений скрипт оболонки Unix: масиви, оператори тестування файлів і рядків, спеціальні змінні