Существуют стандартные способы ввода и вывода массива. Чаще всего массив обрабатывается в цикле for. Вводить значения элементов массива можно двумя способами.
Первый способ:
for i:=1 to n do read(a [ i ]); |
В данном случае значения элементов массива можно вводить в одну строку через пробел. Если же оператор read (a [ i ]) заменить на readln (a [ i ]), то элементы массива будет необходимо вводить в столбец.
Второй способ:
for i:=1 to n do begin write(‘ введите a [’, i, ‘]=’); readln(a [ i ]); end; |
Такой способ ввода значений элементов массива позволяет отслеживать, какой именно элемент был введен в данный момент. Единственный момент, на который необходимо обратить внимание – не запутаться в количестве апострофов. Заметьте, то, что обособлено апострофами будет выведено на экран без изменений, а вместо переменной i будет выведено ее значение (цифра).
На экране это будет выглядеть следующим образом:
введите а [1]=3 ¿ введите а [2]=5 ¿ введите а [3]=1 ¿ введите а [4]=_ |
Аналогично производится распечатка массива. Но просто заменить read на write здесь не достаточно. Для того, чтобы печатаемые значения не сливались между собой, надо явным образом вставлять между ними разделитель – пробел или перевод строки. Приведем два возможных способа распечатки массива:
1) Вывод значений элементов массива в одну строку:
for i:=1 to n do write(a [ i ], ' '); writeln; |
2) Вывод значений элементов массива в столбец:
for i:=1 to n do writeln(a [ i ], ' '); |
На первый взгляд второй способ может показаться более простым и удобным, но это далеко не всегда так. Результат работы такой программы зачастую неудобно, а то и просто невозможно анализировать. Ведь каждый элемент массива будет располагаться в отдельной строке, следовательно, мы не сможем увидеть более 25 элементов одновременно. Кроме того, очень часто массив требуется распечатать дважды, чтобы сравнить состояние массива до обработки и результат его обработки. В этом случае сравнение состояний массива гораздо удобнее производить, если они распечатаны в двух соседних строках, а элементы выровнены по столбцам, т.е. к варианту 1 должна быть добавлена еще и форматная печать (указано количество позиций, которое должно отводиться на печать одного элемента).