Итак, мы столкнулись с проблемой хранения больших объемов данных. Массивы позволяют нам удобно и компактно хранить большое количество информации. При этом мы можем легко с этой информацией работать, то есть записывать какие-то числа в массив, или извлекать их оттуда.
Массивы объявляются следующим образом:
<type> <name> [<size>]
где:
type — это тип массива, то есть какой тип данных будет содержаться в этом массиве.
name — имя массива. Имена массивам даются также как и переменным.
size — размер массива, то есть количество элементов которое будет в массиве.
Вот пример объявления массива:
int array[100];
Мы получили массив с именем array, в котором будет 100 целых чисел.
char letter[345];
А здесь получился массив, состоящий из 345 символов с именем letter.
Когда мы объявляем массив, изначально все его элементы пусты. То есть если мы объявляем целочисленный массив на 100 элементов, то получаем массив состоящий из 100 нулей.
Теперь поговорим о том, как работать с массивом.
Во-первых нужно запомнить, что вся нумерация в С++ идет с нуля, а не с единицы. Поэтому первым в массиве стоит элемент с номером 0.
У каждого элемента в массиве есть свой индекс, или проще говоря порядковый номер, по которому мы можем легко найти какой-то конкретный элемент в массиве. К примеру мы захотели найти четвертый элемент. Для этого стоит обратиться к элементу a[4] (Не забывайте, что в С++ вся нумерация с нуля, поэтому четвертый элемент будет на самом деле пятым по порядку).
Вот пример как мы можем положить некоторый элемент в определенную ячейку. Например с номером 4.
int ar[5];
int x = 10;
ar[4] = x;
В итоге в четвертом элементе массива ar будет число 10.
С отдельными элементами массива мы можем делать все те же операции, что и с обычными переменными. Можем вводить, выводить, складывать и тд. Вот пример
int a[100];
cin >> a[0];
cin >> a[1];
a[2] = a[1] + a[0];
cout << a[2];
Здесь мы ввели нулевой и первый элементы, во второй записали их сумму, а потом вывели эту сумму.
Еще массивы очень хорошо сочетаются с циклами. Пользуясь циклами мы можем оперировать со всеми элементами массива, или с какой-то его частью.
Например:
int a[100];
for (int i = 0; i < 100; i++)
a[i] = i;
В итоге в элементе с номером i будет содержаться число i. Если мы выведем все числа по порядку, то соответственно получим последовательность 0 1 2 3 … 98 99
Или например можем получить сумму всех элементов массива(предполагая, что мы уже чем-то заполнили массив ранее)
int a[100];
int ans = 0;
for (int i = 0; i < 100; i++)
ans += a[i];
cout << ans;