Читайте также: |
|
Действия над массивами.
Для работы с массивами как единым целым используются имена массивов без указателей индекса в скобках.
Массивы участвующие в этих действиях, должны быть равной размерности, иметь одинаковые типы индексов и одинаковые типы переменных.
Пусть А и В массивы.
А=В — истинна, если значение каждого элемента массива А равно соответствующему значению элемента массива В.
А<>В — истинна, если хотя бы одно значение элемента массива А не равно соответствующему значению элемента массива В.
А:=В — элементы массива А заменить элементами массива В.
Но не разрешено А:=2*В.
Описание одномерного массива
Если в программе используется массив, то он должен быть описан в разделе описаний переменных (т.е. задано место в памяти под его элементы и указан тип его элементов).
1) способ.
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]...
Способ
Путём введения тип-массив.
TYPE
<имя типа> = array [ индексы ] of < тип элементов >;
VAR
<имя массива >:< имя типа>;
Например: type
mass = array [1..5] of real;
Var
X: mass;
Задание в программе размерности массива.
Что называется размерностью массива? (Максимальное количество элементов массива, которое определяется при описании)
Если по условию массив задан с переменной размерностью (например, дан массив с N элементами), тогда размерность можно задать несколькими способами:
1) CONST
n = 50; - размерность задаётся константой
VAR
X: array [1.. n] of real;
2) При описании массива задаётся максимально возможная размерность для массива в данном алгоритме, а затем конкретная размерность вводится с клавиатуры.
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}
Вывод элементов одномерного массива.
Вывод элементов массива на экран выполняется в строку, через пробел.
writeln (‘массив исходный (полученный)’);
for i: = 1 to n do Write(A[i], ' ');
или при выводе элементов массива в строку можно использовать форматный вывод.
for i:=1 to n do write (A[i]: 6:2); элементы массива вещественные.
Вывод элементов массива на экран выполняется в столбец.
for i: = 1 to n do
Writeln('A[',i,'] = ',A[i]);
Поиск, замена, работа с элементами
массива с заданными свойствами.
Элементы массива называются индексированными переменными и могут быть использованы как простые переменные. С ними можно выполнять все операции, которые допускаются его типом.
Копирование массива
Дан массив А из N действительных. элементов. Получить из него такой же массив В.
for i: = 1 to m do A[i]:=B[i];
Дата добавления: 2015-07-11; просмотров: 66 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
int n; //р-ть массив | | | Перестановка элементов массива |