Задача

2/9

Обращение к элементу массива

Теория Нажмите, чтобы прочитать/скрыть

Обращение к элементу массива.

Большая часть пользы от массивов определяется тем фактом, что к его элементам можно обращаться индивидуально.
Способ, который позволяет это делать, заключается в использовании индекса для нумерации элементов.
Индекс - это значение, которое указывает на конкретный элемент массива.

Запомните: нумерация массивов в C# начинается с нуля.

Примеры обращения к массиву A:
int x = (A[3] + 5) * A[1] // прочитать значения A[3] и A[1]
A[0] = x + 6              // записать новое значение в A[0]
Разберем программу работы с элементами массива.
int i = 1;
int[] A = new int[5];  //создаем массив из 5 элементов 
A[0] = 23;    // в каждый из 5 элементов массива (индексы от 0 до 4)
A[1] = 12;    // записываем определенное значение
A[2] = 7;
A[3] = 43;
A[4] = 51;
A[2] = A[i] + 2*A[i-1] + A[2*i]; // изменим значение элемента с индексом 2, на результат выражения
                                 // т.к i=1, то подставляя значение переменной i в выражение получим
                                // следующее выражение  A[2] = A[1] + 2*A[0] + A[2];
Console.Write((A[2] + A[4]));

В результате выполнения данной программы на экране появится значение суммы элементов массива с индексом 2 и с индексом 4 равное 116. Как видно из примера, мы можем обращаться к любому элементу массива. А также вычислять необходимый номер элемента по различным формулам (например, как в программе A[i-1] или A[2*i], в данных случаях индексы элементов будут вычислены и зависят от значения i).

Разберем пример программы.
int N = 5;
int[] A = new int[N];
int x = 1;
A[x + 4] = A[x] + A[2 * (x + 1)];  // после подстановки х в выражения и вычислений 
                                  // получаем следующую строку A[5] = A[1] + A[4]
                                  // A[5] такого элемента не существует
                                  // ошибка - выход за границы массива

Массив объявлен из 5 элементов, значит, элементы будут иметь нумерацию от 0 до 4. Видим, что программа в 6й строке обращается к несуществующему элементу: A[5].
Получается, что программа вышла за границы массива.
Выход за границы массива - это обращение к элементу с индексом, который не существует в массиве.
В таких случая программа обычно завершается аварийно с ошибкой run-time error.

 

Задача

В строках с 9 по 12 присвойте элементам массива с индексами от 1 до 4 значение, равное удвоенному значению предыдущего элемента массива. 
В данной задаче нельзя присваивать конкретные числа, необходимо обращаться именно к предыдущему элементу массива по имени и индексу, то есть, запись
A[1] = 46 будет считаться неверной.