
- •Понятие массива.
- •Действия над массивами.
- •Описание одномерного массива
- •2) Способ
- •Задание в программе размерности массива.
- •Ввод с клавиатуры элементов одномерного массива.
- •Вывод элементов одномерного массива.
- •Поиск, замена, работа с элементами массива с заданными свойствами .
- •Поиска максимального (минимального) элемента
Описание одномерного массива
Если в программе используется массив, то он должен быть описан в разделе описаний переменных (т.е. задано место в памяти под его элементы и указан тип его элементов).
способ.
VAR
<имя массива>: array [t1..t2] of <тип элементов>;
t1— начальный индекс, t2 — конечный индекс; например [1...10] или [-2...2]
[t1...t2] , где t1<t2 и t1, t2 заранее определены, порядкового типа (целые числа), определяющие диапазон изменения индексов (номеров) элементов массива.
Имя массива выбирается в соответствии с обычными правилами Паскаля.
Например,
var
X: array [1..5] of real; {массив из 5 вещественных чисел с именем Х и индексами от 1 до 5}
X1: array[1..6] of integer; {массив из 6 целых чисел с именем Х1 и индексами от 1 до 6}
S: array[10..13] of char; {массив из 4 символов с именем S и индексами от 10 до 13}
Ошибка, если ...ARRAY [5]...
2) Способ
Путём введения тип-массив.
TYPE
<имя типа> = array [ индексы] of <тип элементов>;
VAR
<имя массива >:< имя типа>;
Например: type
mass =array[1..5] of real;
var
X : mass;
Задание в программе размерности массива.
Что называется размерностью массива? (Максимальное количество элементов массива, которое определяется при описании)
Если по условию массив задан с переменной размерностью (например, дан массив с N элементами), тогда размерность можно задать несколькими способами:
CONST
n = 50; - размерность задаётся константой
VAR
X: array[1 .. n] of real;
При описании массива задаётся максимально возможная размерность для массива в данном алгоритме, а затем конкретная размерность вводится с клавиатуры.
VAR
X: array [ 1..50 ] of real;
n: integer; {переменная для хранения конкретной размерности массива}
begin
....
write(‘ введите размерность массива n<= 50’);
readln (n);
....
Ввод с клавиатуры элементов одномерного массива.
Строкой описания лишь задаётся место в памяти для массива, но не сам массив.
Ввод и вывод элементов одномерного массива может осуществляться в столбец или в строку. Если количество вводимых или выводимых элементов в совокупности находится в пределах 20, то вводить и выводить эти элементы удобно в столбец с указанием индекса вводимого или выводимого элемента. Для массивов с большим количеством элементов ввод элементов и их вывод лучше осуществлять по строкам.
Ввод в столбец элементов массива А из вещественных чисел с количеством элементов n.
{Ввод размерности массива}
Write('Введите количество элементов массива:');
Readln(n); На экране:
{Ввод элементов массива} введите A[1]=
For i: = 1 to n do введите А [2]=
Begin Write('Введите A[',i,']='); … … …
Readln(A[i]) введите A [n]=
end;
Ввод элементов массива А из вещественных чисел с количеством элементов n в строку, через пробел.
{Ввод размерности массива}
Write ('Введите количество элементов массива:');
Readln(n);
{Ввод элементов массива в строке, через пробел}
For i: = 1 to n do
Readln(A[i])
End;
Элементы набираются через пробел или с новой строки.
Одним из способов заполнения элементов массива является генерирование с помощью функции случайных чисел.
Функция Random(H) возвращает целые числа в диапазоне от 0 до H-1
А:= Random(10); — переменная А получит значение случайного целого числа в диапазоне от 0 до 9
А:= Random(11); — переменная А получит значение случайного целого числа в диапазоне от 0 до 10
А:= Random(10) + 1; — переменная А получит значение случайного целого числа в диапазоне от 1 до 10
Write('Введите количество элементов массива:');
Readln(n);
Randomize;
For i: = 1 to n do
Begin
A[i]:=Random(101);
Write(A[i], ‘ ‘)
end;
Randomize обеспечивает несовпадение последовательности случайных чисел, генерируемых функцией Random. Если генерировать без предварительного использования процедуры Randomize, то при каждом последующем перезапуске программы цепочка случайных чисел будет повторяться.
{Random(101) генерирует целые числа в диапазоне от 0 до 100}