Реверс массива неизвестной длины - Pascal
Формулировка задачи:
Здравствуйте,помогите пожалуйста написать программу.Напишите программу, которая выполняет реверс массива целых чисел, то есть переставляет все элементы в обратном порядке. Размер массива заранее неизвестен. Исходные данные записаны в файл input.txt , обработанный массив нужно вывести в файл output.txt .
Входные данные
Первая строка входного файла input.txt содержит размер массива. Во второй строке записаны все элементы массива, разделённые пробелами.
Выходные данные
Программа должна вывести в файл output.txt все элементы «перевёрнутого» массива в одной строке, разделив их пробелами.
Примеры
входные данные
5
5 1 4 2 3
выходные данные
3 2 4 1 5
Решение задачи: «Реверс массива неизвестной длины»
textual
Листинг программы
var i,j,n:longint; begin assign(input,'input.txt'); reset(input); assign(output,'output.txt'); rewrite(output); readln(n); close(input); while n>0 do begin reset(input); for i:=0 to n do read(j); write(j,' '); n:=n-1; close(input); end; close(output); end.
Объяснение кода листинга программы
- Объявление переменных:
i,jиnтипа longint. - Открытие файла
input.txtдля чтения. - Создание файла
output.txtдля записи. - Чтение значения переменной
nиз файлаinput.txt. - Закрытие файла
input.txt. - Запуск цикла: пока
nбольше 0, делаем следующее: 6.1 Открытие файлаinput.txtдля чтения. 6.2 Цикл: для каждого значенияiот 0 доnделаем следующее: 6.2.1 Чтение значенияjиз файла. 6.2.2 Запись значенияjс пробелом в файлoutput.txt. 6.3 Уменьшение значенияnна 1. 6.4 Закрытие файлаinput.txt. - Закрытие файла
output.txt. Из кода видно, что он сначала читает числоnиз файлаinput.txt, а затем заполняет массив значениями из этого файла в обратном порядке, записывая их с пробелами в файлoutput.txt.