Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metod3O.doc
Скачиваний:
5
Добавлен:
14.08.2019
Размер:
6.93 Mб
Скачать

2.4. Программирование задач с использованием массивов

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

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

1.6, 14.9, –5.6, 8.5, 0.46.

Конечно, можно каждое число обозначить своим именем, например А1, SB, M, NIC, NUM. Но можно для всей совокупности чисел ввести одно обобщающее имя, а индексом отметить конкретное число, например,

А1, А2, А3, А4, А5.

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

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

Каждый элемент массива обозначается именем массива с индексом. Массив описывается при по­мощи задания типа его компонентов и типа индексов. При задании типа индексов фактически указывается число компонентов массива, поэтому тип индексов может быть скалярным или ограниченным. При задании типа индексов нельзя использовать вещественный тип данных.

Число компонентов массива фиксируется при описании и в процессе выполнения программы не меняется. Тип компонентов массива может быть простым или сложным.

2.4.1. Описание одномерного массива

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

type имя типа = array [тип индекса] of тип компонент;

var имя массива: имя типа.

Например:

type vectl= аrray [1..12] of real;

var a, b, f:vectl;

Массив может быть описан и без представления типа в разделе описания типов данных:

var имя массива: array [тип индексов] of тип компонент;

Например:

var mas: array[l.. 10] of integer;

Если в программе используется несколько массивов одного типа, то в разделе описаний переменных var идентификаторы этих массивов перечисляются через запятую, затем следует описание типа:

var g, h:array [0..4] of real;

m, n:аrray [1703..2003] of real;

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

a[1]; b[i]; c[2*n+l]; f[k div 2];

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

Элементы массива могут стоять как в левой части оператора присваивания, так и в выражениях. Над переменной с индексом можно проводить любые операции, а также использовать в качестве аргументов в стандартных функциях, которые допустимы для данных его базового типа (типа компонентов массива). Если базовый тип есть real, допустимы все операции над данными вещественного типа, включая и стандартные функции.

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

Пример. Программа, в которой вводится с клавиатуры и затем выводится на дисплей массив а, состоящий из 10 действительных чисел.

uses crt;

var a : array [1 ..10] of real;

i : integer;

begin clrscr;

writeln(‘Введи массив а(10)’);

for i:=1 to 10 do read(a[i]);

for i:=1 to 10 do write(a[i]:7:2)

end.

При составлении программ с использованием одномерных массивов некоторые задачи встречаются особенно часто. Ниже приведены фрагменты соответствующих программ.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]