Учебники

Rexx — Массивы

Массивы на любом языке программирования позволяют группировать список значений одного типа. Использование массивов заключается в том, что он позволяет создавать список значений аналогичного типа, которые можно сортировать, искать и которыми легко манипулировать . Rexx также позволяет определять массивы. Эти массивы могут быть одномерными или многомерными.

Массивы Rexx могут быть редкими. То есть не каждая позиция массива должна иметь значение или даже быть инициализированной. Могут быть пустые позиции массива или слоты между теми, которые содержат элементы данных. Или массивы могут быть плотными, в которых все последовательные слоты массивов содержат элементы данных.

Во многих языках программирования вас должно интересовать, что представляет собой нижний индекс первой записи в таблице. Первый числовой индекс 0 или 1? В Rexx первый индекс — это то, что вы используете! Таким образом, введите первый элемент массива в положение 0 или 1, как вы предпочитаете.

array_name.0 = ‘first element’

или же

array_name.1 = ‘first element’

Давайте посмотрим на различные операции, доступные для массивов.

Создание массивов

Массивы создаются с тем же соглашением об именах, которое используется для переменных в Rexx.

Общий синтаксис для создания массивов следующий:

Arrayname.index = value 

где

  • Arrayname — это имя, предоставленное массиву.

  • Индекс — это индексная позиция в массиве для ссылки на определенный элемент.

  • Значение — это значение, присвоенное элементу индекса в массиве.

Arrayname — это имя, предоставленное массиву.

Индекс — это индексная позиция в массиве для ссылки на определенный элемент.

Значение — это значение, присвоенное элементу индекса в массиве.

Пример объявления массива следующий:

пример

/* Main program */ 
list.1 = 0 
list.2 = 0 
list.3 = 0

Следующие пункты должны быть отмечены о вышеупомянутой программе —

  • Имя массива указывается в виде списка
  • Есть 3 элемента массива, которые инициализируются значением 0.

Присвоение значений элементу массива

Значения могут быть переназначены элементам массива так же, как элементы массива инициализированы.

Следующая программа является примером значений, которые могут быть назначены различным значениям индекса существующего массива.

/* Main program */ 
list.1 = 0 
list.2 = 0 
list.3 = 0 

/* Assigning new values to the array*/ 
list.1 = 10 
list.3 = 30 

Отображение значений массива

Значения массива могут быть отображены путем обращения к позиции индекса элемента массива. В следующем примере показано, как получить доступ к различным элементам массива.

пример

Live Demo

/* Main program */ 
list.1 = 0 
list.2 = 0 
list.3 = 0 

/* Assigning new values to the array*/ 
list.1 = 10 
list.3 = 30 
say list.1 
say list.2 
say list.3 

Вывод вышеуказанной программы будет следующим:

10
0
30

Копирование массивов

Все элементы массива могут быть скопированы в другой массив. Общий синтаксис этого выглядит следующим образом —

Newarray. = sourcearray. 

где

  • Newarray — это новый массив, в который необходимо скопировать элементы.

  • Sourcearray — это исходный массив, из которого необходимо скопировать элементы.

Newarray — это новый массив, в который необходимо скопировать элементы.

Sourcearray — это исходный массив, из которого необходимо скопировать элементы.

Пример того, как можно выполнять операции копирования для массивов, показан в следующей программе:

пример

Live Demo

/* Main program */ 
list.1 = 0 
list.2 = 0 
list.3 = 0 

/* Assigning new values to the array*/ 
list.1 = 10 
list.3 = 30 
listnew. = list. 

say listnew.1 
say listnew.2 
say listnew.3 

Выход вышеупомянутой программы будет —

10
0
30

Перебор элементов массива

Элементы массива также могут быть повторены с помощью итерационных операторов, доступных в Rexx. Пример того, как это можно сделать, выглядит следующим образом:

пример

Live Demo

/* Main program */ 
list.1 = 10 
list.2 = 20 
list.3 = 30 

number_of_elements = 3 
do j = 1 to number_of_elements 
say list.j 
end 

Следующие указатели должны быть отмечены о вышеупомянутой программе —

  • Цикл do используется для перебора элементов массива.

  • Переменная number_of_elements используется для хранения количества элементов в массиве.

  • Переменная j используется для итерации каждого элемента массива.

Цикл do используется для перебора элементов массива.

Переменная number_of_elements используется для хранения количества элементов в массиве.

Переменная j используется для итерации каждого элемента массива.

Выход вышеупомянутой программы будет —

10
20
30

Двумерные массивы

Также было упомянуто, что мы можем построить многомерные массивы в Rexx. Давайте посмотрим на пример того, как мы можем реализовать 2-мерный массив.

пример

Live Demo

/* Main program */ 
list.1 = 10 
list.1.1 = 11 
list.1.2 = 12 

say list.1 
say list.1.1 
say list.1.2 

Вывод вышеуказанной программы будет показан следующим образом:

10
11
12

О вышеприведенной программе необходимо отметить следующее:

Чтобы создать многомерный массив, мы можем использовать другой уровень индексации. Таким образом, в нашем примере мы использовали list.1.1 для создания другого внутреннего массива для значения индекса 1 массива списка.