Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2 семестр.pdf
Скачиваний:
76
Добавлен:
29.05.2015
Размер:
1.12 Mб
Скачать

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

Чаще всего в качестве типа индекса используется интервальный целый тип.

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

Линейный (одномерный) массив – массив, у которого в описании задан только один индекс; если два индекса, то это двумерный массив и т. д. Одномерные массивы часто называют векторами, т. е. они представляют собой конечную последовательность пронумерованных элементов. Пример описания одномерного массива:

type vec=array[1..5] of real; var x:vec;

или

var x: array[1..5] of real;

Оба из вариантов описывают одномерный массив x, состоящий из 5 вещественных элементов.

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

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

Алгоритм решения задач с использованием массивов:

описание массива;

заполнение массива;

вывод (распечатка) массива;

выполнение условий задачи;

вывод результата.

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

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

Заполнение всех элементов массива числом 1 :

50

for i:=1 to 5 do x[i]:=1;

Заполнение всех элементов массива случайными числами из диапазона 1–9 :

for i:=1 to 5 do x[i]:=random(9);

Заполнениевсехэлементовмассиваприпомощивводасклавиатуры: for i:=1 to 5 do

begin write(‘x[’,i,‘]=’); readln(x[i]);

end;

6.1.2. Вывод массива на экран

Вывод массива на экран в одну строку без пояснений: for i:=1 to 5 do writeln(x[i]:6:1);

Вывод массива на экран в столбец с пояснениями. Этот вариант гораздо нагляднее. Старайтесь использовать его:

for i:=1 to 5 do writeln(‘x[’,i,‘]=’,x[i]:6:1);

6.1.3. Работа с массивами

Пример 6.1. Определить самую высокую температуру и самый теплый день в мае.

program massiv; uses crt;

var t:array[1..31] of integer; i,max,n:integer;

begin Clrscr;

for i:=1 to 31 do begin t[i]:=random(20); write(t[i],‘ ’); end;

writeln; max:=t[1]; n:=1; for i:=2 to 31 do

begin

if t[i]>max then

begin max:=t[i]; n:=i; end;

end;

writeln(‘t-макс.= ’,max,‘ в ’,n, ‘день’); end.

51

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