Под массивом понимается совокупность конечного числа данных одного типа.
Массив обозначается одним именем. Например: буквой А. Каждый элемент массива обозначается именем массива с индексом. Элементы массива упорядочены по значениям индекса.
Таким образом - индекс определяет положение элемента массива данных относительно его начала.
Массив обязательно надо описывать. Форма описания имеет вид:
var имя массива: ARRAY [n1..n2] OF <тип элементов>
Здесь n1, n2 – номер первого и последнего элементов массива соответственно. В качестве типа элементов может использоваться любой тип данных, кроме файлового.
Если несколько массивов имеют одинаковый тип индексов одинаковый базовый тип, то допускается в описании объединять массивы в список, например:
Var A, B, C: array[1..50] OF real.
Здесь объявлена списком три массива A,B,C действительных чисел, каждое из которых содержит по 50 элементов.
В разделе описания типов TYPE указывается тип массива, затем в разделе описания переменных VAR перечисляются массивы, относящиеся к указанному типу.
Описание массива в разделе типов TYPE выглядит следующим образом:
Type massiv = array [n1..n2] OF < тип элементов>
Определить переменную как массив можно непосредственно при её описании:
Var A, B, C: massiv;
Массивы A, B, С используются в разделе операторов программы. Тип массива MASSIV введён формально только в разделе описаний и нигде в программе не указывается и не обрабатывается.
Размерность массива задаётся при его описании и в процессе работы программы размерность массива изменять нежелательно.
Применение индексированных переменных даёт эффект лишь в том случае, когда сам индекс может быть переменной величиной.
Присваивание значений элементам массива может происходить с помощью:
оператора Read (readLn);
uses crt;
var I,n: integer;
a: array[1..10000] of integer;
begin
clrscr;
|
readLn(n);
for i:= 1 to n do begin
|
end;
for i:=1 to n do
|
readkey;
end.
Описания элементов массива в разделе описания констант
uses crt;
const n=5;
a:array[1..5] of integer= (4,5,7,7,0);
var i: integer;
begin
clrscr;
полученный массив
for i:=1 to n do
writeLn(a[i],’’);
readkey;
end.
Оператор присвоения для небольших массивов
а[1]:=10; a[2]:=0, …a[n]:=2 достаточно указать индекс элемента массива, чтобы распоряжаться любым элементом массива
Для получения случайных чисел необходимо воспользоваться следующей функцией:
Функция Random[(x)] - формирует случайное число от 0 до Х целого или вещественного типа (перед обращением к функции её целесообразно инициализировать, использовав процедуру Randomize ).
Х- параметр, указывающий диапазон значений случайного числа от 0 до Х, типа Word. Если параметр Х не задан, результат будет типа Real в пределах от 0,0≤Х≥1,0.
Для перевода вещественного числа в целое необходимо воспользоваться функцией TRUNC, ROUND.
Например:
Сформировать одномерный массив из N элементов, где элементы массива целые случайные числа в пределах от 0 до 45. Напечатать элементы массива в прямом и обратном порядке.
Решение.
для получения целых случайных чисел из диапазона от
random(B-A+1)+A
program massiv1;
uses crt;
var i,n:integer;
a:array[1..10000] of integer;
begin
clrscr;
randomize;
write(‘размер=’); readLn(n);
for i:=1 to n do begin
a[i]:=random(46))+1; {получаем случайные числа от 1 до 45}
writeLn(a[i]),’’); {выводим элементы массива на экран}
end;
for i:=n downto 1 do {массив печетаем в обратном порядке}
write(a[i],’’);
readkey;
end.