Главная / Информатика / Лекция «Табличные величины. Массивы. Обработка массивов»

Лекция «Табличные величины. Массивы. Обработка массивов»

5



«Табличные величины. Массивы. Обработка массивов».


Кроме простых переменных в Бейсике есть еще специальные структуры данных, называемые массивами.

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

Наглядно массив можно представить в виде одномерной или двумерной таблицы (рис.1)

hello_html_4a1087e1.gifРис.1


Так же как и переменная, массив имеет имя - идентификатор, но кроме этого каждый элемент массива имеет индекс. Индекс показывает конкретный элемент массива (ячейку таблицы).

Массивы могут быть одномерными, тогда каждый элемент этого массива имеет один индекс - номер элемента и двумерными, тогда каждый элемент имеет два индекса - номер строки таблицы и столбца (рис.1). Обращение к элементам массива производится с указанием имени массива и индекса. Например, пусть задан одномерный массив В, состоящий из 10 элементов. Тогда

В(7) - седьмой элемент массива В,

В(1) - первый элемент массива В

и т.д.

Аналогично с двумерными массивами

С(1,3) - элемент 1 строки 3 столбца массива С,

С(2,5) - элемент 2 строки 5 столбца массива С

и т.д.

С элементами массива можно выполнять все те же действия, что и с простыми переменными. В качестве индекса элемента массива может быть использована переменная, поэтому очень удобно обрабатывать элементы массива, изменяя индекс в цикле. При использовании массивов ЭВМ должна отвести для них место в памяти. Эта операция производится специальным оператором DIM (DIMENTION - размер).

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

Общий вид оператора DIM:

DIM A(10), B(20), C(3,4)...

/ \

имя массива максимальное

число элементов

Например этот оператор DIM задает три массива:

массив А из десяти элементов,

массив В из двадцати элементов,

двумерный массив С - 3 строки по 4 элемента.

Если указать индекс массива, превышающий его размер, то это приведет к ошибке. Например, А(12) - элемента с таким номером в массиве А не существует. Обычно размерность массива задается в самом начале программы.

Используя массивы, очень удобно обрабатывать различные данные - сортировать, заменять одни данные на другие, находить наибольшее и наименьшее значения, упорядочивать данные и т.д.

Приведем несколько примеров программ, обрабатывающих массивы:

1. Найти наименьший числовой элемент в одномерном числовом массиве.

Пусть задан массив, состоящий из 20 чисел. Сначала мы заполним этот массив случайными числами с помощью функции RND(1).

Заполнить массив удобно в цикле.

10 DIM A(20) 'массив А из 20 элементов

20 FOR x=1 TO 20 'меняем индекс х от 1 до 20

30 A(x)=RND(1)*100 'заполняем элементы массива

40 NEXT x 'следующий элемент

Эту часть программы мы будем использовать и в других примерах.

Теперь найдем наименьший элемент этого массива, т.е. элемент, содержащий наименьшее число. Поступим так: сначала возьмем первый элемент массива за наименьший, обозначим его М.

М=А(1)

Затем последовательно будем сравнивать М с оставшимися элементами. Если какой-либо элемент будет меньше М, то, следовательно, этот элемент будет наименьшим и М присвоим значение этого элемента и так далее до последнего элемента массива. В конце программы выведем весь массив и наименьший элемент на экран.


50 M=A(1) 'наименьший элемент М

60 FOR x=2 TO 20 'перебираем индексы со 2 по 20

70 IF A(x)

80 NEXT x 'следующий элемент

90 FOR x=1 TO 20 'индекс от 1 до 20

100 PRINT A(x) 'вывод элементов массива

110 NEXT x

120 PRINT "Наименьшее значение";M

130 END


2. Проверить, является ли одномерный числовой массив упорядоченным по возрастанию.

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

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

А(х)<А(х+1)

Для просмотра всех элементов будем изменять индекс х от 1 до максимального значения индекса - 1, так как в формуле стоит (х+1). Для ввода данных в массив можно воспользоваться частью программы из предыдущего примера или ввести числа вручную:

10 DIM A(20) 'размер массива

20 FOR x=1 TO 20

30 PRINT "A(";x;")";

40 INPUT A(x) 'ввод элементов массива

50 NEXT x

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

60 FOR x=1 TO 19

70 IF A(x)>A(x+1) THEN 120 'если не упорядочен, то на 120

80 NEXT x

90 PRINT "Массив упорядочен по возрастанию"

100 END

120 PRINT "Массив не упорядочен по возрастанию"

3. В числовом одномерном массиве заменить все элементы, меньшие 50 нулем.

Будем перебирать все элементы массива в цикле и если элемент будет меньше 50, то заменим его нулем.

10 DIM A(20)

20 FOR x=1 TO 20

30 A(x)=RND(1)*100

40 NEXT x

50 FOR x=1 TO 20 'индекс меняем от 1 до 20

60 IF A(x)<50 THEN A(x)=0 'если < 50, то =0

70 NEXT x 'следующий элемент

80 FOR x=1 TO 20

90 PRINT A(x) 'вывод массива на экран

100 NEXT x

Задания.

1. Найти наибольший элемент одномерного числового массива.

2. Проверить, является ли одномерный числовой массив упорядоченным по убыванию.

3. В одномерном числовом массиве заменить все элементы большие 70 на - 10.

4. Вычислить сумму элементов одномерного числового массива.

5. Вычислить в одномерном числовом массиве суммы положительных и отрицательных элементов.

6. Определить сумму положительных элементов прямоугольной матрицы (двумерного массива).

При решении 6 задания необходимо будет воспользоваться вложенными циклами.


Лекция «Табличные величины. Массивы. Обработка массивов»
  • Информатика
Описание:

Данная лекция позволит разобраться в теме «Табличные величины. Массивы данных» при изучении языка программирования Бейсик. В ней приведены примеры нескольких программ обработки одномерных числовых массивов данных с подробным разъяснением действия каждой строки программы. Также предложены несколько заданий для самостоятельной работы учащихся.

Автор Старостина Ольга Владимировна
Дата добавления 24.12.2015
Раздел Информатика
Подраздел Другое
Просмотров 370
Номер материала MA-063411
Скачать свидетельство о публикации

Оставьте свой комментарий:

Введите символы, которые изображены на картинке:

Получить новый код
* Обязательные для заполнения.


Комментарии:

↓ Показать еще коментарии ↓