Обработка массивов

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

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

Массив характеризуется идентификатором, числом измерений (индексов) и числом переменных в каждом измерении. Для образования имен массивов используются те же правила, что и для образования имен простых переменных. В одной и той же программе допустимы одинаковые имена массивов и простых переменных.

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

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

Элементы массива или как их еще называют - индексированные переменные могут употребляться в программе так же, как и простые переменные. Под массивы машина должна выделять память. Под переменную выделяется одна ячейка памяти в тот момент, когда переменная впервые встретится в программе. При работе с массивами первому использованию переменной с индексом должно предшествовать описание, сообщающее какие массивы используются в программе и каков размер каждого массива.

Эта информация задается в операторе описания массивов DIM.

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

 

Каждый массив в программе должен быть заранее объявлен оператором DIM.

Общий вид оператора описания массива:

[номер строки] DIM <список массивов>

Пример:

DIM A(9)

DIM B(5,6)

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

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

Пример. Ввод одномерного массива A(10):

DIM A(10)

FOR I=1 TO 10

INPUT A(I)

NEXT I

Ввод двумерного массива A(3,3):

DIM A(3,3)

FOR I=1 TO 3

FOR J=1 TO 3

INPUT A(I,J)

NEXT J

NEXT I

Пример 1.


Дана матрица. Найти:

1. Сумму элементов главной диагонали.

2. Произведение элементов 2-й строки.

3. Минимальный элемент матрицы.

Программа

REM Задание 1

DIM A(3,3)

S=0:P=1:MIN=A(1,1)

DATA 1,-5,23,-14,-18,9,3,11,-7

FOR I=1 TO 3

FOR J=1 TO 3

READ A(I,J)

NEXT J

NEXT I

FOR I=1 TO 3

FOR J=1 TO 3

IF I=J THEN S=S+A(I,J)

IF I=2 THEN P= P*A(I,J)

IF A(I,J)<MIN THEN MIN =A(I,J)

NEXT J

NEXT I

PRINT S,P,MIN

END

 

Блок-схема алгоритма