Студопедия — МАССИВЫ
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

МАССИВЫ






Рассмотрение сложных типов, так называемых структурированных типов данных, мы начнем с регулярного типа, или массива.

Массив ― это упорядоченная совокупность элементов (чисел, символов, строк и т.п.) одного типа, рассматриваемая как единое целое и имеющая общее имя. К необходимости применения массивов мы приходим всякий раз, когда требуется связать и использовать целый ряд родственных величин. Например, результаты многократных замеров температуры воздуха в течение года удобно рассматривать как совокупность вещественных чисел, объединенных в один сложный объект (структуру) ― массив измерений T=(t1, t 2, …, t n). При этом каждая компонента (элемент) структуры может быть отдельным данным, например, t1=5,8.

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

 

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

В математике и информатике массив называется одномерным, если для получения доступа к его элементам достаточно одной индексной переменной, называемой индексом. Индекс ― целое число, указывающее местоположение (порядковый номер) элемента в массиве. При упоминании в программе любого элемента массива сразу за именем массива должен следовать индекс элемента в квадратных скобках. Аналогом одномерного массива в математике служит вектор столбец или вектор строка, состоящие из n компонент (элементов) а = (а , а , …, а ). Схематично одномерный массив (вектор), состоящий из N элементов представлен на рисунке.1.

При объявлении массива необходимо определить, каким образом (в каких пределах) производится нумерация элементов, указав начальное и конечное значение для индексной переменной (индекса). Тем самым указывается число элементов в массиве ― его размерность и резервируются в памяти компьютера ячейки под заданный массив. Кроме того, необходимо указать идентификатор (имя) массива и тип данных элементов массива.

направление изменения индекса

 


          N
             

 

A4 или A i, i =4.

 

Рисунок.1 ― Схема одномерного массива

Перед использованием массива, его, как и любую другую переменную, необходимо описать в разделе описания.

Общий вид описания массива:

< ИМЯ > : ARRAY [L.. N] OF < ТИП >,

где ARRAY – зарезервированное слово (массив);

< ИМЯ > – имя массива (имя переменной);

L – начальное значение индекса массива;

N – конечное значение индекса массива;

OF – зарезервированное слово (из);

< ТИП > – стандартный или описанный тип данных.

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

Например:

Var

A: array [1.. 10] of real;

B: array [-5.. 44] of integer;

M: array [1.. N] of integer,

где

· массив А состоит из 10 элементов, имеющих вещественный тип данных, и индекс числа совпадает с его порядковым номером;

· массив В – из 50 элементов, имеющих целый тип данных, перенумерованных от -5 до 44;

· массив M состоит из N целых элементов, значение N должно быть ранее задано.

Чаще всего L=1.

Приведём пример одномерного массива В[6], состоящего из шести целых чисел (элементов):

В = (5, 0, -3, 8, 15, -1).

Множество коэффициентов многочлена также можно объединить в массив А[5], состоящий из пяти элементов:

А = (7, 4, 5, 2, 3).

Каждый элемент массива обозначается именем массива с индексом, равным порядковому номеру элемента. Например, для того чтобы в программе обратиться к первому элементу массива А, необходимо указать имя массива и в квадратных скобках значение индекса, т.е. порядкового номера: А[1] – его значение равно 7; третий элемент А[3] имеет значение 5 и т. д. Индексы элементов массива дают возможность различать их между собой и обращаться к любому из них по имени с индексом.

Индекс элемента можно задавать несколькими способами:

· непосредственно с помощью числа – А[3];

· косвенно с помощью переменной – A[I];

· косвенно с помощью арифметического выражения – A[I+2].

При задании индекса с помощью переменной, эту переменную необходимо описать в разделе описания. Данная переменная должна носить целочисленный тип данных (Integer).

В рассмотренных примерах фигурировали числовые массивы, но массивы могут быть и текстовыми. Например, список студентов в журнале:

1. И. Иванов

2. А. Пушкин

3. К. Петров

4. Б. Акунин

можно рассматривать как текстовой массив и обозначить следующим образом:

SP[4]={ sp1, sp2, sp3, sp4 },

где sp 1 = «И. Иванов», sp2 = «А. Пушкин» и т. д. Номера фамилий в массив не включаем, так как они совпадают с индексами элементов.

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

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

 

Варианты заданий

1. В двумерном целочисленном массиве 5x5 найти максимальный и минимальный элементы.

2. В одномерном целочисленном массиве А[1..20] найти номера максимального и минимального элементов.

3. Напишите программу, которая складывает отдельно положительные и отдельно отрицательные элементы массива и выводит суммы на экран.

4. В одномерном целочисленном массиве А[1..20] выполнить поиск контрольного числа, введенного пользователем и вывести сообщение, встречается ли оно в данном массиве.

5. В одномерном целочисленном массиве А[1..20] подсчитать отрицательные числа и вывести их количество на экран.

6. Напишите программу, которая вводит с клавиатуры 20 реальных чисел, организовывает их хранение в одномерном массиве, а затем определяет каких чисел в массиве больше, положительных или отрицательных. Не исключается случай равенства.

7. Дан одномерный массив действительных чисел Х1,..., Х10. Выяснить, является ли последовательность Х1,..., Х10 упорядоченной по убыванию.

8. Напишите программу, которая вводит с клавиатуры 15 целых чисел, организовывает их хранение в одномерном массиве, а затем определяет среднее арифметическое элементов массива. Результат выдаётся на экран пользователя.

9. Напишите программу, которая вводит с клавиатуры 20 реальных чисел, организовывает их хранение в одномерном массиве, а затем определяет индекс и значение максимального элемента массива. Результат выдаётся на экран пользователя.

10. Напишите программу, которая вводит с клавиатуры 30 символов, организовывает их хранение в одномерном массиве, а затем выводит содержимое массива в обратном порядке с указанием индекса (номера) каждого элемента.

 

 

 







Дата добавления: 2015-03-11; просмотров: 1005. Нарушение авторских прав; Мы поможем в написании вашей работы!



Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

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

Неисправности автосцепки, с которыми запрещается постановка вагонов в поезд. Причины саморасцепов ЗАПРЕЩАЕТСЯ: постановка в поезда и следование в них вагонов, у которых автосцепное устройство имеет хотя бы одну из следующих неисправностей: - трещину в корпусе автосцепки, излом деталей механизма...

Понятие метода в психологии. Классификация методов психологии и их характеристика Метод – это путь, способ познания, посредством которого познается предмет науки (С...

ЛЕКАРСТВЕННЫЕ ФОРМЫ ДЛЯ ИНЪЕКЦИЙ К лекарственным формам для инъекций относятся водные, спиртовые и масляные растворы, суспензии, эмульсии, ново­галеновые препараты, жидкие органопрепараты и жидкие экс­тракты, а также порошки и таблетки для имплантации...

Мелоксикам (Мовалис) Групповая принадлежность · Нестероидное противовоспалительное средство, преимущественно селективный обратимый ингибитор циклооксигеназы (ЦОГ-2)...

Менадиона натрия бисульфит (Викасол) Групповая принадлежность •Синтетический аналог витамина K, жирорастворимый, коагулянт...

Разновидности сальников для насосов и правильный уход за ними   Сальники, используемые в насосном оборудовании, служат для герметизации пространства образованного кожухом и рабочим валом, выходящим через корпус наружу...

Studopedia.info - Студопедия - 2014-2024 год . (0.011 сек.) русская версия | украинская версия