Расположить элементы массива в обратном порядке - Free Pascal
Формулировка задачи:
Расположить элементы данного массива в обратном порядке,(первый элемент меняется с последним,второй с предпоследним и т.д.) (Решить задачу,организуя чтение исходных данных из файла данных и вывод результата в файл данных.)
Помогите найти ошибку..
Программа:
Program lab6;
var A:array [1..100] of longint;
n,c,i:integer;
input,output:text;
begin
assign(input,'comp.in');
assign(output,'comp.out');
reset(input);
readln(input,n);
rewrite(input);
for i:=1 to n do
begin
readln(input,A[i]);
end;
for i:=1 to n div 2 do
begin
c:=a[i];
a[i]:=a[n+1-i];
a[n+1-i]:=c;
end;
for i:=1 to n do
writeln(output,A[i]);
close(input);
close(output);
end.Решение задачи: «Расположить элементы массива в обратном порядке»
textual
Листинг программы
Program lab6; var A:array [1..100] of longint; n,c,i:integer; input,output:text; begin assign(input,'comp.in'); assign(output,'comp.out'); reset(input); rewrite(output); read(input,n); for i:=1 to n do read(input,A[i]); close(input); for i:=1 to n div 2 do begin c:=a[i]; a[i]:=a[n+1-i]; a[n+1-i]:=c; end; for i:=1 to n do write(output,' ',A[i]); close(output); end.
Объяснение кода листинга программы
- Объявляются переменные: A (массив), n (количество элементов), c (временная переменная), i (номер элемента).
- Устанавливаются начальные значения для ввода/вывода: input (входной файл), output (выходной файл).
- Открывается входной файл и считывается количество элементов.
- Считываются элементы массива в цикле.
- Закрывается входной файл.
- В цикле выполняется перестановка элементов массива, начиная с индекса 1 и до (n/2)-1.
- В каждой итерации внутреннего цикла происходит обмен элементов с помощью временной переменной c.
- Закрывается выходной файл.