ПОСТАНОВКА ЗАДАЧИ:
Требуется изменить порядок следования элементов массива C, состоящего из n элементов, на обратный, используя вспомогательную переменную p.
Исходный массив C: 1 2 3 4 5
Конечный массив C: 5 4 3 2 1
Перестановка производится по одному элементу через промежуточную переменную:
1) 1-ый элемент передается в ячейку p;
2) последний элемент ставится на место 1-го;
3) элемент из ячейки p ставится на последнее место.
Количество таких перестановок равно trunc(n/2) или (n div 2) – деление нацело.
Program Inwert; uses crt;
{ описание переменных и массива }
{ описание процедуры ввода массива }
{ описание процедуры вывода массива }
procedure Inw;
var m: integer; p: real;
Begin
m:=trunc(n/2); { определение числа циклов }
for i:=1 to m do
Begin
p:=c[i]; { перестановка i элемента в p }
c[i]:=c[n-i+1]; { перестановка на i место элемента n-i+1 }
c[n-i+1]:=p; { перестановка элемента из p нa n-i+1 место }
End
end;
Begin
ClrScr; n:=20;
Input;
ClrScr;
Print; writeln;
Inw;
Print; writeln;
Inw;
Print; writeln;
Readkey;
End.
З А Д А Н И Я:
1. Набрать и исполнить программу.
2. Увеличить число элементов.
3. Заменить числовой массив на символьный.
Получить из слова ГОРОД слово ДОРОГ и другие перевертыши.
4. Произвести инвертирование с сохранением исходного массива.
Подсказка: используйте новый массив.
ПРАКТИЧЕСКОЕ ЗАНЯТИЕ № 38
#7. ОБРАБОТКА ОДНОМЕРНЫХ МАССИВОВ