Массивы. (Бейсик)

При составлении программ ранее использовались переменные. Для каждой переменной компьютер отводит ячейку памяти обращение к которой выполняется по имени переменной. Недостатком такого способа написания программ – при работе с большим количеством данных пришлось бы выделять большое количество переменных. Зачастую работа с одним типом данных проводится по одному принципу меняется лишь числовое значение. Гораздо легче данные одного типа обозначать одной переменной меняя лишь номер ячейки в которой хранится значения. Такая организация данным называется массив.

Массивом называется упорядоченная последовательность величин, обозначенная одним именем. В Бейсике массивы могут быть одномерные и двухмерные. Если в одномерном массиве указывается имя и номер ячейки, то в двух мерном указывается имя, номер строки и номер столбца, на котором он расположен. Чтобы получить доступ к ячейкам необходимо указать имя массива и его индекс. Один – для одномерного массива и два для двухмерного.

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

Оператор DIM определяет максимальное значение индексов переменных массива и отводит необходимую массиву память.

Синтаксис:

DIM <список переменных с индексами>

Если переменная массива не была описана оператором DIM, то максимальное значение индексов принимается равным 10. Оператор DIM устанавливает все элементы описываемого массива равными нулю.

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

DIM J(10)

DIM L$(45)

DIM B(24,45)

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

DIM N(I,K)

Любой массив начинается с ячейки 0, поэтому при открытии массива на 50 ячеек может быть объявлен массив DIM L(49).

Задача: составить программу для ввода температуры за 30 дней и найти среднюю за месяц.

REM ввод данных

FOR i = 1 TO 30

PRINT "введите температуру за"; i; "день" INPUT t(i)

NEXT i

REM обработка данных

FOR i = 1 TO 30 s = s + t(i) NEXT i

PRINT "средняя температура за месяц"; s / 30

 

Задача составить программу для нахождения минимального элемента в массиве.

CLS

INPUT "введите количество элементов в массиве"; k DIM a(k)

FOR i = 1 TO k

INPUT "введите очередной элемент массива"; a(i) NEXT i

min = a(1)

FOR j = 1 TO k

IF min > a(j) THEN min = a(j)

NEXT j

PRINT "минимальный элемент массива "; min