Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по QBASIC.doc
Скачиваний:
9
Добавлен:
20.09.2019
Размер:
357.38 Кб
Скачать

Массивы

Одним из важных инструментов программиста является возможность работы с массивами переменных.

Массив - набор однотипных данных, хранящихся вместе и имеющих общее имя.

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

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

Одномерные массивы

Основные понятия:

Массив обозначается одним именем. Так всю совокупность действительных чисел

1.6, 14.9, -5.0, 8.5, 0.46

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

A(1), A(2), A(3), ..., A(n).

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

Для рассмотренного выше примера элементами массива А являются:

A(1)=1.6, A(2)=14.9, A(3)=-5.0, A(4)=8.5, A(5)=0.46

Определение массивов

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

Массивы, содержащие от 1 до 10 элементов, можно использовать без их объявления в операторе DIM. Максимальное количество элементов любого массива определяется только объемом свободной ОП.

Формат записи оператора DIM:

DIM имя_массива (максимальный_индекс)

"Имя_массива" обычно выбирается по тем же правилам, что и имена простых переменных.

"Максимальный_индекс" указывает максимально допустимый в программе индекс и должен быть положительным.

Примеры описания массивов:

DIM X(50) ' объявление одномерного числового массива X для 50 чисел;

DIM V$(12) 'объявление одномерного массива V для 12 символьных элементов.

Объявление массива с переменным размером.

INPUT K

DIM A(K)

........

Виды ошибок

Если указать в программе элемент массива с индексом большим, чем значение размерности, объявленное в операторе DIM или принятое по умолчанию, то выдается сообщение об ошибке 9:

Subscript out of range (выход за пределы массива).

Если оператор DIM указан после использования имени массива или массив повторно объявлен, то появляется сообщение 10:

Redimensioned array (повторное задание размерности массива).

Заполнение массива

Существует два способа присваивания значений элементам массива:

1) cтатический, с использованием операторов DATA, READ и оператора присваивания;

2) динамический, с использованием оператора INPUT и функции RND.

При работе с массивами очень удобно пользоваться оператором цикла FOR...NEXT. В качестве индекса массива используют параметр цикла.

1. Пример статического заполнения массива.

DATA слива,ананас,груша

DATA яблоко,вишня,абрикос

DIM A$(6)

FOR I=1 TO 6

READ A$(I)

NEXT I

Цикл FOR...NEXT последовательно присваивает значения всем переменным из списка.

2. Пример динамического заполнения массива

INPUT "Введите количество элементов массива ";N

DIM A(N)

FOR I=1 TO N

INPUT A(I)

NEXT I

В данном примере используется переменное задание размерности массива.

3. Пример заполнения массива с помощью стандартной функции RND

DIM V(12)

FOR I=1 TO 12

V(I)=INT(RND(1)*10)

PRINT V(I);

NEXT J