Программа
изменения порядка следования
элементов заданного массива X на
обратный, т.е. инвертирование массива.
|
Program
pr31 (Input, Output);
|
Объявление
имени программы
|
Var
|
Блок
объявления глобальных переменных
|
X
: Array [1..100] Of Integer;
|
Переменная
X - целочисленный массив из 100 элементов
|
N
: Integer;
|
Переменная
N - размерность массива
|
Y
: Integer;
|
Переменная
Y - целочисленный "буфер",
используемый при инвертировании
|
i
: Integer;
|
Переменная
i - параметр цикла
|
|
|
Begin
|
Начало
тела программы
|
|
|
WriteLn
('PASCAL: Изменение порядка следования
элементов на обратный.');
|
Формулировка
цели алгоритма
|
Write
('Введите размерность массива:');
|
Запрос
ввода N - размерности массива
|
ReadLn
(N);
|
Ввод
N
|
|
|
WriteLn
('Введите элементы массива:');
|
Запрос
ввода элементов самого массива
|
For
i := 1 To N Do
|
Цикл
для i от 1 до N, где i - номер очередного
элемента
|
Begin
|
Начало
тела цикла
|
Write
('X[', i, '] = ');
|
Вывод
удобной подсказки
|
ReadLn
(X[i]);
|
Ввод
очередного элемента - X[i]
|
End;
|
Конец
тела цикла
|
|
|
For
i := 1 To (N div 2) Do
|
Цикл
для i от 1 до середины массива
|
Begin
|
Начало
тела цикла
|
Y
:= X [i];
|
В
"буфер" заносим i-ый элемент массива
|
X
[i] := X [N - i + 1];
|
i-ому
элементу присваиваем (N-i+1)-ый элемент, т.е.
i-ый с конца
|
X
[N - i + 1] := Y;
|
(N-i+1)-ому
элементу присваиваем содержимое "буфера"
|
End;
|
Конец
тела цикла
|
|
|
WriteLn
('Полученный массив:');
|
Сообщение
пользователю о выводе полученного
массива
|
For
i := 1 To N Do
|
Цикл
для i от 1 до N, где i - номер очередного
элемента
|
Begin
|
Начало
тела цикла
|
Write
(X[i]);
|
Вывод
очередного элемента
|
Write
(' ');
|
Вывод
разделителя элементов - символа "пробел"
|
End;
|
Конец
тела цикла
|
|
|
ReadLn;
|
Ожидание
нажатия клавиши Enter для завершения
|
End.
|
Конец
программы.
|