Ввод-вывод элементов одномерного массива
Если в исходных данных задачи фигурирует массив, количество элементов в котором не фиксировано (не указано конкретным числом), то это количество элементов, или длина массива, должно рассматриваться как исходный параметр задачи, и его надо вводить как исходное данное.
Для алгоритмического языка Паскаль возможной схемой реализации является задание границ индексов массива как констант в разделе const и указания этих констант при описании массива в разделе описания переменных var, например:
const
nmax = 100;
var
mas:array[1..nmax] of integer;
Теперь в массив mas можно помещать любое число элементов, не превосходящее величины nmax. Заметим, что локализация длины массива в константе nmax позволяет легко сменить размеры массива, указав новое значение константы.
При вводе массива необходимо последовательно вводить 1-й, 2-й, 3-й и т.д. элементы массива, аналогичным образом поступить и при выводе. Следовательно, необходимо организовать цикл. Блок-схемы алгоритмов ввода элементов массива изображены на рис. 3-4.
Рис .3 Алгоритм ввода массива Рис. 4. Алгоритм ввода массива
с использованием цикла с предусловием с использованием безусловного цикла
Безусловный цикл (или цикл с заданным числом повторений) удобно использовать для обработки всего массива, и в дальнейшем при выполнении таких операций необходимо применять именно его. Вывод массива организуется аналогично вводу.
В программе ввод массивам осуществляется следующим образом:
write(‘введите количество элементов массива <= nmax: ’);
read(n);
for i:=1 to n do
begin
write(‘введите’, i ,’ элемент массива’);
read(mas[i]);
end;