Ввод-вывод элементов массива
Паскаль не имеет средств ввода-вывода элементов массива сразу, поэтому ввод и вывод значений производится поэлементно. Значения элементам массива можно присвоить с помощью оператора присваивания, как показано в примере инициализации, однако чаще всего они вводятся с экрана с помощью оператора Read или Readln с использованием оператора организации цикла for:
Ввод элементов одномерного массива А:
for I:=l to 4 do
Readln(A[I]) ;
Аналогично значения двумерного массива вводятся с помощью вложенного оператора for:
Ввод элементов двумерного массива В:
for I := I to 10 do
for J := 1 to 15 do
Readln (B[I,J]) ;
В связи с тем, что использовался оператор Readln, каждое значение будет вводиться с новой строки. Можно ввести и значения отдельных элементов, а не всего массива. Так, операторами:
Read(A[3]);
Read(B[6,9]);
вводится значение третьего элемента вектора А и значение элемента, расположенного в шестой строке девятого столбца матрицы В. Оба значения набираются на одной строке экрана, начиная с текущей позиции расположения курсора.
Вывод значений элементов массива выполняется аналогичным образом, но используются операторы Write или Writeln:
Вывод элементов одномерного массива А:
for I := I to 4 do
Writeln (A[I]);
Вывод элементов двумерного массива В:
for I := I to 10 do
for J := 1 to 15 do
Writein (B[I,J]);
Копированием массивов называется присваивание значений всех элементов одного массива всем соответствующим элементам другого массива. Копирование можно выполнить одним оператором присваивания, например А:=D; или с помощью оператора for:
for I := 1 to 4 do
A[I] := D[I];
В обоих случаях значение элементов массива D не изменяется, а значения элементов массива А становятся равными значениям соответствующих элементов массива D. Очевидно, что оба массива должны быть идентичны по структуре.
Иногда требуется осуществить поиск в массиве каких-либо элементов, удовлетворяющих некоторым известным условиям. Пусть, например, надо выяснить, сколько элементов массива А имеют нулевое значение.
К := 0;
for I := 1 to 4 do
if A[I] = 0 then К := К + 1;
После выполнения цикла переменная К будет содержать количество элементов массива А с нулевым значением.
Перестановка значений элементов массива осуществляется с помощью дополнительной переменной того же типа, что и базовый тип массива.
Например, так запишется фрагмент программы, обменивающий значения первого и пятого элементов массива А:
Vs:= A[5]; {Vs - вспомогательная переменная}
А[5]:= А[1];
А[1]:= Vs;