Раздел 2 - Массивы данных

Download Report

Transcript Раздел 2 - Массивы данных

Массивы данных
Подготовила: Камышная И.Н.
Массивы данных
 Массив – это упорядоченная по
возрастанию индексов (номеров)
совокупность данных одного типа, для
хранения которых отводятся
последовательно расположенные ячейки
памяти.
Виды массивов
 одномерные (строка данных),
 двумерные (плоская таблица данных),
 трехмерные (объемная таблица).
 Массив характеризуется своим именем
(идентификатором), количеством
измерений (индексов) и верхней границей
каждого из индексов.
 Для описания размера и размерности
массива используется оператор DIM.
Синтаксис
 DIM имя_массива(N)
 где N – максимальный индекс массива. Так определяется






одномерный массив действительных чисел. Нумерация
индексов начинается с нуля, так что количество чисел,
хранящихся в массиве, будет N+1.
DIM имя_массива(N) As тип
Так определяется одномерный массив с N+1 элементом
заданного типа.
DIM имя_массива(N TO M)
Так определяется одномерный массив, индекс которого
может меняться в интервале от N до M (естественно, N<M).
DIM имя_массива(N, M)
Так определяется двумерный массив, первый индекс
которого меняется от 0 до N, а второй – от 0 до M.
Примеры
 DIM A(3,4) ‘Двумерный массив чисел с плавающей точкой
 DIM Х(20) ‘описывает одномерный массив, который может
состоять из 21 вещественного числа
 DIM А$(13) ‘описывает одномерный массив из 14 строк
символов
 Обращение к элементам массива осуществляется по
индексам. Так вышеобъявленный массив Х имеет элементы,
к которым можно обращаться Х(0), Х(1),…Х(20). Массив А
имеет, в частности, элементы А(0,0), А(1,3) и т.д. В памяти
можно размещать массив, начиная с нулевой ячейки, но
можно и с 1-ой:
 DIM B$(1 TO 10)
Основные алгоритмы обработки
одномерных массивов
 К основным алгоритмам обработки данных в одномерных













массивах можно отнести следующие:
Вычисление Σ-суммы и Π- произведения элементов массива.
Вычисление Σ, Π и количества элементов массива,
удовлетворяющих заданному условию.
Формирование массива из элементов заданного массива по
условию.
Нахождение min и max элемента в массиве и их координат.
Замена элемент в массиве на некоторое значение
Поменять некоторые элементы массива местами
Поиск заданного элемента в массиве.
Объединение двух массивов равного размера в один с
чередованием элементов исходных массивов.
Инвертирование массива.
Циклический сдвиг элементов массива на m позиций вправо
Упорядочение (сортировка) массива
Проверка массива на упорядоченность
Поиск заданного элемента в упорядоченном по возрастанию
массиве.
Пример 1. Вычисление суммы
элементов массива
 Описание алгоритма:
 Задается начальное значение суммы S равное 0, поскольку




от прибавления 0 значение суммы не меняется.
Открывается цикл для ввода элементов массива A.
В этом же цикле производится вычисление суммы S.
После завершения цикла выводится результат – сумма
элементов массива S.
Если решать задачу в общем виде, т.е. для массива с
любым количеством элементов, то в самом начале
программы необходимо ввести значение количества
элементов в массиве К.
Пример 1.
 INPUT «Введите номер последнего элемента», K
 DIM А(K)
 FOR i=0 TO К
 INPUT “Введите элемент массива”,A(i)
 S=S+А(i)
 NEXT
 PRINT “Сумма элементов массива А равна” S
 END
Пример 2.
 Вводится информация о средних сентябрьских









температурах в европейских странах. Вычислить
среднеевропейскую температуру сентября и вывести
результат
Описание алгоритма:
в начале значение суммы равно 0 – переменной S
присваивается значение 0;
вводится с подсказкой количество стран К;
в цикле, который будет выполняться К раз
вводится значение температуры Т;
вычисляется сумма температур;
цикл повторяется;
после завершения цикла вычисляется среднее значение
температур;
выводится результат.
Блок-схема алгоритма
Вводится информация о средних
сентябрьских температурах в
европейских странах.
Вычислить среднеевропейскую
температуру сентября и вывести
результат
Начало
Ввод
К
S=0
i = 1,К
Ввод
Т(i)
S=S+T(i)
Вывод
S
Конец
Пример 2.
Программа вычисления среднего значения.
S=0
Input “Сколько стран”, K
DIM T(K)
For i=1 To K
Input “Значение температуры”, T(i)
S=S+T(i)
Next
SR=S/K
Print “Среднеевропейская температура сентября
=”; SR
 End










Задания для см. работы
 Создание на основе существующего массива (DIM A(10):
AN(10)) нового массива по заданному условию –







создание массива положительных элементов.
Поиск заданного элемента в массиве
Объединение двух массивов равного размера в один с
чередованием элементов исходных массивов
Инвертирование массива C(N)
Циклический сдвиг элементов массива на m позиций
вправо
Упорядочение (сортировка) массива
Проверка массива на упорядоченность
Поиск заданного элемента в упорядоченном по
возрастанию массиве.