Обработка массивов
Простые переменные, использованные ранее при составлении программ, имеют свое имя, и под каждую из них выделяется ячейка памяти, обращение к которой осуществляется по этому имени. Использование только простых переменных затрудняет или делает вообще невозможным решение многих важных задач. В подобных случаях целесообразно использовать массивы.
Массивом называется упорядоченная последовательность величин, обозначенная одним именем, для хранения которых отводятся последовательно расположенные поля памяти.
Массив характеризуется идентификатором, числом измерений (индексов) и числом переменных в каждом измерении. Для образования имен массивов используются те же правила, что и для образования имен простых переменных. В одной и той же программе допустимы одинаковые имена массивов и простых переменных.
Допуск к конкретному элементу этой последовательности осуществляется указанием рядом с именем массива в круглых скобках его порядкового номера.
По способу организации различают одномерные массивы - векторы и двумерные массивы - матрицы. Элементы одномерного массива снабжаются одним индексом. Элементы двумерного массива снабжаются двумя индексами, первый из которых определяет номер строки, а второй номер столбца, на пересечении которых расположен в матрице соответствующий элемент.
Элементы массива или как их еще называют - индексированные переменные могут употребляться в программе так же, как и простые переменные. Под массивы машина должна выделять память. Под переменную выделяется одна ячейка памяти в тот момент, когда переменная впервые встретится в программе. При работе с массивами первому использованию переменной с индексом должно предшествовать описание, сообщающее какие массивы используются в программе и каков размер каждого массива.
Эта информация задается в операторе описания массивов 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
Блок-схема алгоритма